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

autoware源码编译

1. 安装前

尽量保证系统是一个干净的系统,我是根据官方要求,重新在电脑上安装了Ubuntu 22.04,显卡为3080显卡。

同时,先用鱼香ROS的办法安装ROS2 humble,这里非常重要。由于按照鱼香ROS安装ROS的时候,会修改系统的源,这会让后续很多依赖的包都可以下载。具体命令如下:

source <(wget -qO- http://fishros.com/install)

参见官方链接:

https://github.com/fishros/install

2 Autoware的安装

具体的步骤参考官方的编译步骤即可。

autoware官方编译步骤:

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

核心步骤

#下载Autoware相关仓库文件
git clone https://github.com/autowarefoundation/autoware.git
cd autoware#建立编译环境
./setup-dev-env.sh#下载Autoware源码
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#编译代码
colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Release

3 编译过程中,遇到的问题

注意1

下载好autoware文件夹后,注意,使用命令如下(不要用官方的命令):

 ./setup-dev-env.sh --no-nvidia --no-cuda-drivers

这里表示不要自动安装NVIDIA相关的软件,因为这些软件都很大,网络不好的情况下,先不安装,手动安装。

Nividia套件,具体的安装链接参考:

https://blog.csdn.net/stanleyrain/article/details/153726839?spm=1001.2014.3001.5501

注意2

当询问是否安装artifacts时,选择否,否则,由于网络问题,经常安装不成功,后续可以使用如下命令单独进行下载,同样的,这个命令也可能需要多次才能成功。

注意,要在autoware文件夹中,执行这个命令

ansible-playbook autoware.dev_env.download_artifacts -e "data_dir=$HOME/autoware_data" --ask-become-pass

注意3

编译前,最后先安装autoware所有的依赖包,否则编译会提示缺少很多包

rosdep install -y --from-paths src --ignore-src --rosdistro humble

源码编译命令

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

注意4

出现错误:

--- stderr: managed_transform_buffer
/home/stanley/autoware/src/universe/external/managed_transform_buffer/managed_transform_buffer/src/managed_transform_buffer.cpp:19:10: fatal error: pcl_ros/transforms.hpp: No such file or directory
   19 | #include <pcl_ros/transforms.hpp>
      |          ^~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
 

解决办法,修改对应的CMakeLists.txt

stanley@zjf:~/autoware/src/universe/external/managed_transform_buffer/managed_transform_buffer$ vim CMakeLists.txt 

# ==== 新增的依赖链接语句 ====
ament_target_dependencies(${PROJECT_NAME}
  geometry_msgs
  pcl_conversions
  pcl_ros
  rclcpp
  sensor_msgs
  tf2
  tf2_eigen
  tf2_geometry_msgs
)
 

http://www.dtcms.com/a/525312.html

相关文章:

  • react nextjs 项目部署
  • 怎样建设网站 需要哪些条件免费的免抠图素材网站
  • FPGA学习笔记——用Vitis IDE生成工程(串口发送)
  • 烟台 o2o平台带动做网站行业平潭综合实验区交通与建设网站
  • GaussianShader
  • 昆山企业做网站好用的网站系统
  • javaScript事件委托
  • 广州营销型网站建设哪家好公司域名怎么起
  • 28.C++的IO流
  • 车载基础软件——基础软件验证平台典型案例(通信相关)
  • 【FPGA】设计流程——板级验证
  • 1Panel-1Panel中openresty网站目录更改为宿主机共享目录
  • 分支和循环语句
  • 自己做网站买株洲平台公司有几家
  • 2.2softmax回归
  • EtherCAT转PROFINET网关在饲料厂自动化系统整合中的关键作用
  • 公司网站建设泉州福田住房和建设局官网
  • 2018建设网站企业网站页脚信息
  • 【Frida Android】基础篇12:Native层hook基础——调用原生函数
  • gitlab上传新仓库,保留原仓库提交记录,原仓库远程地址已经失效,只有本机还有提交记录
  • wordpress最新文章加图标怎么做好网站搜索引擎优化
  • 操作系统 | Linux:第四章 Linux的实用操作
  • 数学概念 复习自用
  • 深圳做h5网站制作ui设计培训是什么
  • 第八章 惊喜18 高绩效辅导之二
  • 22-STM32F103C8T6的WS2812B驱动
  • 做编程网站沈阳做企业网站的
  • 网站内容栏目网站建设全
  • LeetCode:1905. 统计子岛屿
  • 数据库研发规范