Installing ROS on an Ubuntu 18.04
0. 装前须知
ROS官方发行了许多版本,它们与Ubuntu的发行版本存在对应关如下表:
ROS版本 | Ubuntu版本 |
---|---|
ROS Kinetic Kame | Ubuntu 16.04 |
ROS Melodic Morenia | Ubuntu 18.04 |
ROS Noetic Ninjemys | Ubuntu 20.04 |
因此本文介绍与Ubuntu18.04对应的ROS Melodic Morenia的安装方式。ROS官网提供了Ubuntu平台下编译好的ROS软件包和源码(不推荐),本文推荐大家直接下载官方编译好的软件包。
1. 安装
1.1. 配置Ubuntu软件仓库
配置你的Ubuntu软件仓库(repositories)以允许使用“restricted”“universe”和“multiverse”存储库。你可以根据Ubuntu软件仓库指南来完成这项工作。
1.2. 设置sources.list
设置电脑以安装来自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'
若下载速度缓慢,推荐就近选择一个镜像源替换上面的命令。例如,Tsinghua University为
sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.tuna.tsinghua.edu.cn/ros/ubuntu/ `lsb_release -cs` main" > /etc/apt/sources.list.d/ros-latest.list'
如果依旧遇到连接问题,请尝试为Ubuntu apt换源(非ROS网站)。
1.3. 设置密钥
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
若无法连接到密钥服务器,可以尝试替换上面命令中的hkp://keyserver.ubuntu.com:80为hkp://pgp.mit.edu:80。
你也可以使用curl命令替换apt-key命令,这在使用代理服务器的情况下比较有用:
curl -sSL 'http://keyserver.ubuntu.com/pks/lookup?op=get&search=0xC1CF6E31E6BADE8868B172B4F42ED6FBAB17C654' | sudo apt-key add -
1.4. 安装
首先,确保你的 Debian 包索引是最新的
sudo apt update
在 ROS 中有很多不同的库和工具。我们提供了四种默认选项供你开始。你也可以单独安装ROS的软件包。
如果下面的步骤出现问题,你可以用这个源来替代上面提到的源:ros-shadow-fixed(英文页面)
桌面完整版(推荐):包含ROS、rqt、rviz、机器人通用库、2D/3D模拟器、导航以及2D/3D感知包。
sudo apt install ros-melodic-desktop-full
sudo apt install ros-melodic-desktop
ROS-基础包: 包含ROS包,构建和通信库。没有图形界面工具。
sudo apt install ros-melodic-ros-base
单独的包: 你也可以安装某个指定的ROS软件包(使用软件包名称替换掉下面的PACKAGE):
sudo apt install ros-melodic-PACKAGE
如:
sudo apt install ros-melodic-slam-gmapping
要查找可用软件包,请运行:
apt search ros-melodic
1.5. 初始化Rosdep
在你使用ROS之前,需要初始化rosdep。rosdep让你能够轻松地安装被想要编译的源代码,或被某些ROS核心组件需要的系统依赖。
sudo rosdep init
rosdep update
1.6. 设置环境
将ROS环境变量自动添加到新zsh会话会很方便:
echo "source /opt/ros/melodic/setup.zsh" >> ~/.zshrc
source ~/.zshrc
如果你只想在当前zsh会话中设置ROS的环境变量,只需要输入:
source /opt/ros/melodic/setup.zsh
1.7. 构建工厂依赖
到目前为止,你已经安装了运行核心ROS包所需的内容。为了创建和管理自己的ROS工作区,有各种各样的工具和需求分别分布。例如:rosinstall是一个经常使用的命令行工具,它使你能够轻松地从一个命令下载许多ROS包的源树。
要安装这个工具和其他构建ROS包的依赖项,请运行:
sudo apt-get install python-rosinstall python-rosinstall-generator python-wstool build-essential
2. 测试ROS
完成上述步骤的安装过程后需要验证ROS是否安装成功,请输入:
roscore
看到如started core service [/rosout]
的输出即表示安装成功!