200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > 【Ubuntu16.04】ROS · Kinetic安装 · 图文教程与问题详解

【Ubuntu16.04】ROS · Kinetic安装 · 图文教程与问题详解

时间:2023-01-17 05:22:13

相关推荐

【Ubuntu16.04】ROS · Kinetic安装 · 图文教程与问题详解

ROS 安装

1. 设置安装源

在终端输入指令:(同下)

sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.tuna./ros/ubuntu/ `lsb_release -cs` main" > /etc/apt/sources.list.d/ros-latest.list'

将ROS源切换为国内镜像源可提高访问速度,也可在系统设置 -> 软件和更新 -> Ubuntu软件 -> 下载自 -> 其他站点 ,进行手动切换。

2.设置安装 Key

sudo apt-key adv --keyserver 'hkp://:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654

运行结果如图:

3.更新安装源信息

sudo apt-get update

4.安装

sudo apt-get install ros-kinetic-desktop-full

运行结果如图:

安装过程比较久,需要耐心等待几分钟,可以欣赏一下终端不断滚动的过程。

5.初始化

sudo rosdep init

rosdep update

如果在此处遇到报错,先执行以下三条指令:

sudo apt-get install python-pip

sudo pip install 6-rosdep

sudo 6-rosdep

途中的出现的错误不用管,再次执行:

sudo rosdep init

rosdep update

出现的ERROR可以忽略,接着下一步的安装。

详细解决策略见本文下面问题解决部分,问题三。

6.配置环境

在终端输入指令:

echo "source /opt/ros/kinetic/setup.bash" >> ~/.bashrc

source ~/.bashrc

7.安装依赖

sudo apt-get install python-rosinstall python-rosinstall-generator python-wstool build-essential

此时ROS 已经安装完成,下一步可以测试是否安装成功。


ROS 测试

Ctrl + Alt +T 打开终端, 启动ROS ,输入:

roscore

打开一个新的终端,启动海龟仿真器,输入:

rosrun turtlesim turtlesim_node

再打开一个新的终端,控制海龟移动,输入:

rosrun turtlesim turtle_teleop_key

通过键盘上下键控制小海龟运动,运行效果如图,说明ROS安装成功。


问题解决

问题 1. 文件list 第一行记录格式有误

原因分析:

ros-latest.list 文件中有格式错误,ROS源链接不应该有换行或中断。有的教程会让删掉该文件,虽然不会报错,如下图,但会导致出现下文第二个问题,无法定位软件包。

解决方案:

检查更换ROS源时的代码链接是否出现换行,空格,中文等错误。


问题 2. 无法定位软件包 ros-kinetic-desktop-full

原因分析:

由于在sudo apt-get update 时读取软件包列表的数量不够而导致的,即缺少部分软件包。同时,检查是否缺少ros-latest.list 文件。

解决方案:

设置镜像源(清华源),使读取到完整的软件包列表,输入:

sudo sh -c '. /etc/lsb-release && echo "deb http://mirrors.tuna./ros/ubuntu/ `lsb_release -cs` main" > /etc/apt/sources.list.d/ros-latest.list'

之后再进行尝试,结果如图:


问题 3. rosdep init 和 update 报错

原因分析:

网络被墙

解决方案:

切换手机热点切换镜像源修改DSN,IPfan墙

网上有许多关于该问题的解决方法,但大多数都是网络的问题,如果能够通过科学上网访问外网的话就会基本解决该问题,通过切换手机热点和换源的方法我也都试过,但还是倒在了最后一步,如图。

但也可以通过修改DSN,IP等解决,我最终就是通过该方法解决的,具体方法请参考博主的文章:

rosdep init 及update报错的解决办法汇总(亲测)

更新成功,如图

此外,再推荐一种极为简单的方法

运行下面三条指令即可:

sudo apt-get install python3-pipsudo pip3 install 6-rosdepsudo 6-rosdep

如果系统无法安装pip3,可以安装pip。上述三条指令替换为:

sudo apt-get install python-pipsudo pip install 6-rosdepsudo 6-rosdep

途中会出现以下错误,可以忽略,继续执行接下来的步骤即可。

参考链接

只需三条指令,轻松解决ROS安装过程中rosdep初始化超时失败问题!

问题4:Problem executing scripts APT::Update::Post-Invoke-Success

在执行 sudo apt-get update 时报如下错误:

E: Problem executing scripts APT::Update::Post-Invoke-Success ‘if /usr/bin/test -w /var/cache/app-info -a -e /usr/bin/appstreamcli; then appstreamcli refresh > /dev/null; fi’

E: Sub-process returned an error code

先执行:

sudo apt-get purge libappstream3

再执行:

sudo apt-get update

参考链接

sudo apt-get update 报错:E: Problem executing scripts APT::Update::Post-Invoke-Success 'if /usr/bin/te

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。