当前位置: 首页 > news >正文

【自动驾驶】Ubuntu22.04源码安装Autoware Core/Universe

【自动驾驶】Ubuntu22.04源码安装Autoware Core/Universe

  • 官方源码安装教程
  • 前置条件
  • 安装ROS2 Humble
  • 安装Autoware Core/Universe
    • 配置开发环境
    • 配置工作空间
    • 设置控制台

官方源码安装教程

链接:https://autowarefoundation.github.io/autoware-documentation/main/installation/autoware/source-installation/

前置条件

  1. Ubuntu 22.04
  2. CPU with 8 cores
  3. 16GB RAM
  4. [Optional] NVIDIA GPU (4GB RAM)
  5. Git

安装ROS2 Humble

使用鱼香ROS脚本进行安装

wget http://fishros.com/install -O fishros && . fishros

安装Autoware Core/Universe

配置开发环境

选择一个目录,克隆autowarefoundation/autoware,并进入项目目录

git clone https://github.com/autowarefoundation/autoware.git
cd autoware

使用官方提供的脚本自动安装依赖

sudo ./setup-dev-env.sh

过程installing ansible from spec 'ansible==6.*'可能比较漫长,属于正常现象
若出现如下错误:

fatal: [localhost]: FAILED! => {"changed": false, "dest": "/usr/share/keyrings/ros-archive-keyring.gpg", "elapsed": 0, "gid": 0, "group": "root", "mode": "01204", "msg": "Request failed: <urlopen error [Errno 111] Connection refused>", "owner": "root", "size": 1167, "state": "file", "uid": 0, "url": "https://raw.githubusercontent.com/ros/rosdistro/master/ros.key"}

与ROS 2 GPG 密钥访问链接失败有关,第一种解决方案是使用VPN;第二中解决方案需要查找raw.githubusercontent.com的IP地址并修改/etc/hosts,参考链接。

配置工作空间

创建src目录并克隆存储库,使用vcstool创建工作空间

cd autoware
mkdir src
vcs import src < autoware.repos

安装ROS依赖包

source /opt/ros/humble/setup.bash
# Make sure all previously installed ros-$ROS_DISTRO-* packages are upgraded to their latest version
sudo apt update && sudo apt upgrade
rosdep update
rosdep install -y --from-paths src --ignore-src --rosdistro $ROS_DISTRO

安装和配置ccache,加快连续build

# 安装ccache
sudo apt update && sudo apt install ccache# 创建ccache的配置文件
mkdir -p ~/.cache/ccache
touch ~/.cache/ccache/ccache.conf# 设置最大缓存大小
echo "max_size = 60G" >> ~/.cache/ccache/ccache.conf
# 将下面内容加入到 `~/.bashrc` 文件中
export CC="/usr/lib/ccache/gcc"
export CXX="/usr/lib/ccache/g++"
export CCACHE_DIR="$HOME/.cache/ccache/"
# 验证ccache是否可以正常运行
# # 查看此项:Cache size (GB): 0.00 / 60.00 (0.00 %)
source ~/.bashrc
ccache -s

构建工作空间,Autoware使用colon构建工作空间

colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release

设置控制台

默认情况下,ROS2的日志不会对输出着色。为了着色,需要将如下内容添加到~/.bashrc

 export RCUTILS_COLORIZED_OUTPUT=1

为了自定义日志格式,可以将如下内容加入到~/.bashrc

export RCUTILS_CONSOLE_OUTPUT_FORMAT="[{severity} {time}] [{name}]: {message} ({function_name}() at {file_name}:{line_number})"
http://www.lryc.cn/news/504840.html

相关文章:

  • 使用Nexus3搭建npm私有仓库
  • OpenHarmony和OpenVela的技术创新以及两者对比
  • 【LeetCode每日一题】Leetcode 1071.字符串的最大公因子
  • 《C++:计算机视觉图像识别与目标检测算法优化的利器》
  • 大模型的构建与部署(2)——数据清洗
  • 试题转excel;word转excel;大风车excel
  • 微信小程序webview和小程序通讯
  • ChatGPT大模型 创作高质量文案的使用教程和案例
  • Vue Web开发(八)
  • element-ui实现table表格的嵌套(table表格嵌套)功能实现
  • 【考前预习】4.计算机网络—网络层
  • 【java】MDC
  • Android 好的开源库
  • Go 语言结构
  • 【漆学军】MT5几个重要类库的使用例子
  • 在 Ubuntu 24.04.1 LTS (WSL) 中使用 openssl 生成 keybox.xml
  • 【JavaSE基础】第十六章:IO流
  • 常见漏洞—SSRF_FastCGI
  • LeetCode 283.移动零(超简单讲解)
  • GIS原理及应用、地理坐标系与投影坐标系
  • 用github镜像加速, --recursive还是去github站怎么处理?
  • ctfshow-web 151-170-文件上传
  • 【电源专题】开关转换器使能(EN)管脚的几种不同方式
  • 5G学习笔记之SNPN系列之ID和广播消息
  • Qt-Advanced-Docking-System配置及使用、心得
  • 【Bolt.new + PromptCoder】三分钟还原油管主页
  • 影像组学+病理组学+深度学习人工智能应用
  • RK3568平台(基础篇)io命令支持
  • Yolov8源码分析
  • Python中的装饰器`@functools.lru_cache`:用法、来源与应用 (中英双语)