Autoware 1.12.0 源码安装总结

Autoware 1.12.0 源码安装总结

终于是跑通了autoware的demo,源码安装的过程中踩了挺多坑的,本文总结一下安装过程并记录遇到的问题。安装autoware之前最好大概搜索一下其他人的安装过程然后再去官网一步步安装,能少走很多弯路。
(autoware的整个资源已经迁移到gitlab了,之前github主页也会提醒转到gitlab网站)

一、配置及需要预先安装的软件

autoware需要提前安装的东西挺多的,最好确保这些都安装正确再继续。

  1. Ubuntu 16.04 LTS,安装过程可参考我的这篇博客:Ubuntu 16.04安装过程中的一些总结
    注意第一个坑! 安装完ubuntu系统之后最好不要去安装anaconda,因为装完anaconda会把原始Ubuntu自带的python 2.7替换为Python3(ROS很多包都会用到python 2.7)我第一次试着装autoware的时候就装了anaconda,重新创建了一个python 2.7的conda环境之后在跑autoware demo的时候出现了打不开autoware的运行时系统的问题,所以为了节省精力,还是不要装anaconda的好。
  2. ROS kinetic,安装过程可以参考我的这篇博客:ubuntu 16.04 ROS Kinetic安装
    安装ROS相对容易许多,除了这篇文章中提到的换国内源之后出现的GPG ERROR问题,整体安装下来比较顺利。
    (ROS Kinetic本身就自带了OpenCV 3.3.1,也可以装完ROS之后可以用import cv2cv2.__version__查看版本)
  3. QT 5.2.1及以上,这里我装的是QT 5.9.9(去官网下载即可),至于QT-ROS的插件安装过程我后续加到这来
  4. CUDA 9.0,autoware要求CUDA的版本是9.0,所以还是严格按照官网要求来做,我怕出现问题就没装其他版本。装CUDA前先看看显卡驱动是不是和你的内核要求的驱动版本一致,不一致会出现:Failed to initialize NVML: Driver/library version mismatch,下文有解决该问题的博客链接。
    参考链接:
    • CUDA下载地址
    • CUDA 9.0下载与安装
      (这一步中修改环境变量之后一定要用source ~/.bashrc更新,最后用nvcc -V检查cuda版本)
    • 解决Failed to initialize NVML: Driver/library version mismatch

2. Autoware安装

确保以上的软件都正确安装之后就可以按照官网的步骤安装了。我这里就直接拷贝指令过来吧,省得如果要再装的话去官网找了。
I. 安装相关依赖

sudo apt-get update 
sudo apt-get install -y python-catkin-pkg python-rosdep ros-$ROS_DISTRO-catkin gksu
sudo apt-get install -y python3-pip python3-colcon-common-extensions python3-setuptools python3-vcstool
pip3 install -U setuptools

II. Build

创建工作空间

mkdir -p autoware.ai/src
cd autoware.ai

下载autoware.ai到工作空间

wget -O autoware.ai.repos "https://gitlab.com/autowarefoundation/autoware.ai/autoware/raw/1.12.0/autoware.ai.repos?inline=false"
vcs import src < autoware.ai.repos

用rosdep安装依赖

rosdep update
rosdep install -y --from-paths src --ignore-src --rosdistro $ROS_DISTRO

编译工作空间(这里是with CUDA support)

AUTOWARE_COMPILE_WITH_CUDA=1 colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release

踩坑:动态库链接libEGL.so损坏

为了解决上述问题,我参考了这篇博客,根据报错情况,这里损坏的链接是libEGL.so。先看该文件是否存在,我是有这个文件的,但是打开文件的properties之后会发现链接已损坏,如下:
Autoware 1.12.0 源码安装总结_第1张图片
所以先删除该文件,再重新添加链接。

sudo rm /usr/lib/x86_64-linux-gnu/libEGL.so
sudo ln /usr/lib/x86_64-linux-gnu/libEGL.so.1   /usr/lib/x86_64-linux-gnu/libEGL.so

出现下图就说明安装好了,有的包出现警告应该不影响。还有一点就是DNN相关的包不会自动安装。
Autoware 1.12.0 源码安装总结_第2张图片

3. 运行Autoware ROSBAG Demo

运行demo之前需要按照官网的要求下载两个数据包。建议直接从谷歌云盘下载。并且注意一下两个数据包的大小,sample_moriyama_data.tar.gz大小约为133MB,sample_moriyama_150324.tar.gz比较大,有3GB左右。
官方demo网址

下载之后过程就比较简单了,搬运的指令如下:

第一步,解压文件

cd ~
mkdir .autoware
cd .autoware
cp ~/Downloads/sample_moriyama_* .
tar zxfv sample_moriyama_150324.tar.gz
tar zxfv sample_moriyama_data.tar.gz

(这里面要严格按照官网要求创建.autoware文件夹,我在CSDN上看到了有的博主提到了这个问题,文章参考)
第二步,运行

cd autoware.ai
source install/setup.bash
roslaunch runtime_manager runtime_manager.launch

(这里会打开两个窗口)

第三步,设置simulation的.bag文件,play之后直接pause
第四步,打开Rviz,设置配置文件(File-->Open Configautoware.ai/src/autoware/documentation/autoware_quickstart_examples/launch/rosbag_demo/default.rviz

第五步,打开quick start界面,添加相关例子的路径:autoware.ai/src/autoware/documentation/autoware_quickstart_examples/launch/rosbag_demo/.
第六步,开始运行simulation:
Autoware 1.12.0 源码安装总结_第3张图片

你可能感兴趣的:(ubuntu与ros)