项目场景:
硬件平台:NVida agx; 系统:Ubuntu18.04 ; 安装需求: ros-melodic ;opencv3.4.3 ; GCC7、G++7; qt ; cuda10.2;tensorrt7; autoware1.14;
注意事项:强烈建议加装一块固态硬盘,单纯依靠agx 的emmc可能不够使用。
安装过程:
1.安装ros-melodic
参考链接:Ubuntu18.04安装ROS Melodic
配置ROS软件源
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
配置密钥
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
更新系统软件源
sudo apt-get update
安装Melodic完整桌面版本
sudo apt install ros-melodic-desktop-full
初始化rosdep
sudo rosdep init
rosdep update
此处遇到的问题:sudo: rosdep: command not found
解决方案:
缺少rosdep组件 安装即可sudo apt install rospack-tools
遇到被墙的问题导致无法rosdep init和rosdep update
解决方案:
1、打开terminal控制台,输入:sudo gedit /etc/hosts
2、在打开的文件末尾一行添加: 151.101.84.133 raw.githubusercontent.com
3、保存退出,在terminal中输入: sudo rosdep init
4、rosdep update 被墙的问题参考链接ROS入门教程-rosdep update错误解决方法
设置环境变量
echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
source ~/.bashrc
安装ros需要的依赖
sudo apt install python-rosinstall python-rosinstall-generator python-wstool build-essential
至此完成ros的安装
2.安装openCV3.4.3
参考链接:Jetson AGX Xavier 安装 OpenCV 3.4
卸载原有的OpenCV
$ sudo apt-get purge libopencv*
输入以下代码进行安装
git clone https://github.com/jetsonhacks/buildOpenCVXavier
cd buildOpenCVXavier
git checkout v1.0
./buildOpenCV.sh
安装结果查询
opencv_version
3.安装cuda 10.2
参考链接:安装cuda 10.2
首先在命令行编辑环境变量回车:
sudo gedit ~/.bashrc
打开环境变量文件,在文件末尾插入如下环境变量代码
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
export CUDA_HOME=$CUDA_HOME:/usr/local/cuda
source ~/.bashrc
输入以下代码验证是否成功:
nvcc -V
4.安装qt
参考链接:英伟达NX安装QT
先安装基础库
sudo apt-get install qtbase5-dev
然后安装QTcreater
sudo apt-get install qt5-default qtcreator -y
5.安装eigen3.3.7
安装包百度网盘链接:链接:https://pan.baidu.com/s/1I3mztMCHZrBuZJA0-i5O4Q
提取码:jzsl
解压文件,在terminal中cd到该文件并进入,然后依次执行:
mkdir build && cd build
cmake ..
make
sudo make install
安装完成
6.安装autoware1.14
参考链接:ubuntu18.04安装Nvidia驱动、cuda、cuDNN、autoware1.14(GPU版本)教程
autoware1.14安装包百度网盘链接:https://pan.baidu.com/s/1_d9CLoGwMiZdp4wg55TsMA
提取码:umd1
首先安装系统依赖:
sudo apt update
sudo apt install -y python-catkin-pkg python-rosdep ros-$ROS_DISTRO-catkin
sudo apt install -y python3-pip python3-colcon-common-extensions python3-setuptools python3-vcstool
pip3 install -U setuptools
下载源码(如果选择百度网盘下载,可以跳过以下四行命令的最后两行):
mkdir -p autoware.ai/src
cd autoware.ai
wget -O autoware.ai.repos "https://raw.githubusercontent.com/Autoware-AI/autoware.ai/1.14.0/autoware.ai.repos"
vcs import src < autoware.ai.repos
配置安装环境:
rosdep update
rosdep install -y --from-paths src --ignore-src --rosdistro $ROS_DISTRO
修改有关cuda的配置文件
如果安装的是cuda10.2,需要修改一个配置文件,安装cuda10.0直接跳过这一步。
配置文件目录:~/autoware.ai/src/autoware/common/autoware_build_flags/cmake/autoware_build_flags-extras.cmake
将文件中cuda10.0的部分改成10.2即可,一共改三处,如下图所示:
编译安装(CUDA)
AUTOWARE_COMPILE_WITH_CUDA=1 colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release
整个安装编译可能会遇到以下问题:
链接openCV库路径出现问题,如下图所示:
解决方案:
查找opencv库路径,在terminal中输入:
pkg-config --cflags opencv
按该路径对对应的cmake文件进行修改:
以下错误以相同方式解决:
问题: fails to build: calibration_publisher. undefined reference to cv::read
解决方案:
修改calibration_publisher/CMakeLists.txt 增加${OpenCV_LIBS}
target_link_libraries(calibration_publisher
${catkin_LIBRARIES}
${OpenCV_LIBS}
)修改calibration_publisher/package.xml 增加libopencv-dev
参考链接:创客智造 autoware
问题:tensorrt版本太高
查看tensorrt版本为8 需要7以下版本
此链接可以解决部分问题,但不能完全解决
尝试在nx 上进行降级,安装失败
agx 并未出现此问题
最后选择重装旧版系统,问题解决
问题: No such file or directory#include
原因在于autoware不兼容高版本的opencv
将camera_lidar_calibration_node.cpp中把等于版本3,换成大于
CV_AA未声明的标识符问题
在对应的C文件中加入以下头文件
#include<opencv2/imgproc/imgproc_c.h>
`
7.安装autoware1.14
在autoware工作空间运行以下命令
source install/setup.bash
roslaunch runtime_manager runtime_manager.launch
成功启动autoware
文章出处登录后可见!