因最近做项目需要用到Autoware,因此安装Autoware,把整个流程记录下,方便自己记忆,也方便做Autoware相关的朋友一起探讨。
安装也是按照其 Github中的Readme(https://github.com/CPFL/Autoware/wiki/Source-Build) 进行安装,在安装Autoware之前,有如下依赖:Ros kinetic(Ubuntu 16.04),OpenCV和Qt。
- 一. Ubuntu 16.04安装 ROS Kinetic
按照wiki官网步骤安装ROS kinetic:http://wiki.ros.org/kinetic/Installation/Ubuntu
设置你的计算机可以从packages.ros.org接收软件
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://ha.pool.sks-keyservers.net:80 --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116
如果您遇到连接到keyserver有问题,可以尝试在前面的命令中替换hkp://pgp.mit.edu:80或hkp://keyserver.ubuntu.com:80。
首先,确保Ubuntu软件包索引是最新的:
sudo apt-get update
ROS中有许多不同的库和工具。我们提供了四种默认配置来帮助您入门。您还可以单独安装ROS包。
全桌面安装:(推荐):ROS, rqt, rviz, robot-generic libraries, 2D/3D simulators, navigation and 2D/3D perception
sudo apt-get install ros-kinetic-desktop-full
桌面安装:ROS, rqt, rviz, and robot-generic libraries
sudo apt-get install ros-kinetic-desktop
ROS-Base: (极简版) ROS包、构建和通信库。没有GUI工具。
sudo apt-get install ros-kinetic-ros-base
单个包:还可以安装特定的ROS包(用包名的破折号替换下划线):
sudo apt-get install ros-kinetic-PACKAGE
例如:
sudo apt-get install ros-kinetic-slam-gmapping
查询可用的包,使用:
apt-cache search ros-kinetic
在使用ROS之前,需要初始化rosdep。rosdep使您能够轻松地为要编译的源安装系统依赖项,并且需要在ROS中运行一些核心组件。
sudo rosdep init
rosdep update
当每次启动一个新的shell时,ROS环境变量都会自动添加到bash会话中:
echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc
source ~/.bashrc
如果您安装了多个ROS分发包,~/.bashrc必须只提供您当前使用的版本的setup.bash源。
如果您只想更改当前shell的环境,可以输入:
source /opt/ros/kinetic/setup.bash
如果您使用zsh而不是bash,则需要运行以下命令来设置shell:
echo "source /opt/ros/kinetic/setup.zsh" >> ~/.zshrc
source ~/.zshrc
到目前为止,您已经安装了运行核心ROS包所需的东西。为了创建和管理您自己的ROS工作区,有各种工具和需求分别分布。例如,rosinstall是一个经常使用的命令行工具,它允许您使用一个命令轻松地下载用于ROS包的许多源代码树。
要安装此工具和构建ROS包的其他依赖项,请运行:
sudo apt install python-rosinstall python-rosinstall-generator python-wstool build-essential
二. Ubuntu 16.04 安装Opencv 3.4.3
1.去官网下载opencv(http://opencv.org/releases.html),选择3.4.3版本下的Sources.
2.解压下载下来的zip包并进入加压后的文件夹:
unzip opencv-3.4.3.zip
cd opencv-3.4.3
3.安装cmake和依赖库
sudo apt-get install cmake
sudo apt-get install build-essential libgtk2.0-dev libavcodec-dev libavformat-dev libjpeg.dev libtiff4.dev libswscale-dev libjasper-dev
4.创建编译文件夹并进入
mkdir my_build_dir
cd my_build_dir
5.执行cmake
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
6.编译,等待完成
sudo make
7.安装
sudo make install
到此,OpenCV安装完成,下面是环境配置。
8.将OpenCV的库添加到系统可执行路径
sudo gedit /etc/ld.so.conf.d/opencv.conf
执行此命令后打开的可能是一个空白的文件,不用管,只需要在文件末尾添加下面语句并保存:
/usr/local/lib
9.执行如下命令使得配置路径生效
sudo ldconfig
10.配置bash
sudo gedit /etc/bash.bashrc
在最末尾添加
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig export PKG_CONFIG_PATH
保存,执行如下命令使得配置生效
source /etc/bash.bashrc
三.Ubuntu 16.04 安装QT5
1.从官网上获取qt5.8的安装包。网址为:https://download.qt.io/official_releases/qt/
选择当前最新版5.12,进入后根据自己电脑系统选择运行版本。我的是64位Ubuntu 16.04,因此选择qt-opensource-linux-x64-5.12.0.run。
2.调整权限,运行安装程序,按照指令完成QT安装
chmod +x qt-opensource-linux-x64-5.12.0.run
./qt-opensource-linux-x64-5.12.0.run
运行后,进入安装指导界面,根据提示一步步安装就可以了。
3.安装g++
新打开一个命令终端,执行以下命令安装g++:
sudo apt-get install build-essential
4.安装通用字体配置库-runtime
执行以下命令安装通用字体配置库的完整运行时文件:
sudo apt-get install libfontconfig1
5.配置一个编译器
启动Qt Creator. 进入Tools > Options.点击Build & Run并选择配置选项。如果没有自动检测到编译器,则配置编译器。
6.安装OpenGL库
执行以下命令安装OpenGL库:
sudo apt-get install mesa-common-dev
注意:仅仅安装上面提到的mesa-common-dev kit对于最新的Ubuntu版本来说是不够的。根据Qt论坛中的评论,需要安装一个额外的包。执行下面的命令:
sudo apt-get install libglu1-mesa-dev -y
7.设置文件与pro文件的关联
从联机源安装时,文件关联不会自动完成。当您试图将其与文件资源管理器关联时,它也不会显示。Wiki网上给了示例,但尝试后不成功。尝试如下方法可以:
cd .local/share/applications
ls -l
只有文件“Qt Creator (Enterprise).desktop”,将其复制到桌面,即可打开QT Creator,而不用每次都进入QT安装目录去打开。
四.Autoware安装
1.为Ubuntu16.04 ROS Kinetic安装系统依赖项
sudo apt-get update
sudo apt-get install -y python-catkin-pkg python-rosdep python-wstool ros-$ROS_DISTRO-catkin libmosquitto-dev gksu
2.克隆资源代码
cd $HOME
git clone https://github.com/CPFL/Autoware.git --recurse-submodules
或者,如果您已经有了repo的副本,那么运行:
git submodule update --init --recursive
3.初始化工作区,让rosdep安装缺失的依赖项并编译。
cd ~/Autoware/ros/src
catkin_init_workspace
cd ../
rosdep install -y --from-paths src --ignore-src --rosdistro $ROS_DISTRO
./catkin_make_release
4.运行
cd $HOME/Autoware/ros
./run
到这里就完成了Autoware的安装!