Ubuntu 16.04安装ROS kinetic版本--附带安装过程中遇到过的问题及解决方法

2023-05-16

Ubuntu 16.04安装ROS kinetic版本(附带本人遇到过的问题)

#Ubuntu 16的对应的是Kinetic版本
#Ubuntu 18的对应的是Melodic版本

1.更改源在这里插入图片描述

图上的几个勾默认是选上的,如果没有选上,选成上图这样(如果修改过勾,点击关闭会让你输入密码,然后选择重新载入,等到载入完毕再点关闭)

建议选择清华大学的源:https://mirrors.tuna.tsinghua.edu.cn/

2.添加ROS源(设置 sources.list)

为 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';

3.添加ROS源key

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

出现问题:

W: GPG 错误:http://packages.ros.org/ros/ubuntu xenial InRelease: 由于没有公钥,
无法验证下列签名: NO_PUBKEY F42ED6FBAB17C654
W: 仓库 “http://packages.ros.org/ros/ubuntu xenial InRelease” 没有数字签名。
N: 无法认证来自该源的数据,所以使用它会带来潜在风险。
N: 参见 apt-secure(8) 手册以了解仓库创建和用户配置方面的细节。

解决方法1:
执行

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F42ED6FBAB17C654

注意:最后的码,根据不同的公钥缺失进行修改,本例中公钥来自于

W: GPG 错误:http://packages.ros.org/ros/ubuntu xenial InRelease: 由于没有公钥,
无法验证下列签名: NO_PUBKEY F42ED6FBAB17C654

其中F42ED6FBAB17C654即为所用公钥

解决方法2:
在上面的命令中用 hkp://pgp.mit.edu:80 或 hkp://keyserver.ubuntu.com:80 来替换

4.更新

sudo apt-get update
sudo apt-get upgrade

(需要执行一段时间,更新速度与网速和源有关)
出现问题1:

E: 软件源列表 /etc/apt/sources.list.d/ros-latest.list 第 1 行中的类别 ““deb” 无法识别
E: 无法读取源列表。

解决方法:
执行

sudo rm /etc/apt/sources.list.d/ros-latest.list

出现问题2:

E: 无法获得锁 /var/lib/dpkg/lock-frontend - open (11: 资源暂时不可用)
E: 无法获取 dpkg 前端锁 (/var/lib/dpkg/lock-frontend),是否有其他进程正占用它?

解决方法1:
执行

sudo rm /var/cache/apt/archives/lock
sudo rm /var/lib/dpkg/lock

解决方法2:
执行

sudo rm /var/lib/dpkg/lock-frontend

5.安装aptitude

sudo apt-get install aptitude

(aptitude是一款十分强大的安装工具,比如安装程序时能分析出各种依赖问题,建议使用aptitude安装程序)

6.1桌面安装:(针对性安装)

1.ROS,rqt, rviz,机器人通用库

sudo apt-get install ros-kinetic-desktop
// 18.04为sudo apt-get install ros-Melodic-desktop

2.ROS-Base (Bare Bones):ROS 包,构建和通信库。没有 GUI 工具。

sudo apt-get install ros-kinetic-ros-base
// 18.04为sudo apt-get install ros-Melodic-ros-base

3.独立的包安装:可以安装一个特定的 ROS 包(用实际的包名来替换下面的命令中的 “PACKAGE”)。

sudo apt-get install ros-kinetic-PACKAGE
// 18.04为sudo apt-get install ros-Melodic-PACKAGE

如:

sudo apt-get install ros-kinetic-slam-gmapping
// 18.04为sudo apt-get install ros-Melodic-slam-gmapping

#安装时间网络情况、电脑配置、源影响

6.2安装ROS kinetic完整版(全部安装,比费时间)

sudo apt install ros-kinetic-desktop-full
// 18.04为sudo apt install ros-Melodic-desktop-full
通常在做开发时,采用桌面完整安装比较方便一点,可以一股脑将所有有可能用到的软件包都安装进来。

出现问题:

E: 无法定位软件包 ros-Melodic-desktop-full

解决:
指令换成

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

7.ROS初始化

sudo rosdep init

(在使用ros之前一定要进行初始化)
出现问题1:

ERROR: cannot download default sources list from:
https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/sources.list.d/20-default.list
Website may be down.

解决方法:
1.链接: link.

2.链接: link.https://blog.csdn.net/weixin_44692299/article/details/105869229
PS: 151.101.84.133 raw.githubusercontent.com
199.232.28.133 raw.githubusercontent.com
151.101.228.133 raw.github.com’当前好用
出现问题2:

sudo: rosdep:找不到命令

解决方法:
需要输入

sudo apt install python-rosdep2

再次执行

sudo rosdep init

#古月居方法:https://www.guyuehome.com/12640

8.ROS更新

rosdep update

出现问题:

ERROR: error loading sources list:
    The read operation timed out

解决:
链接: link. https://blog.csdn.net/DDonggggg/article/details/115798335?spm=1001.2014.3001.5502

#未验证的解决方式https://blog.csdn.net/hhz_999/article/details/120471217

9.环境设置

如果在每次一个新的终端启动时,ROS 环境变量都能自动地添加进你的 bash 会话是非常方便,这可以通过如下命令来实现:

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

[参考链接
链接: link.https://blog.csdn.net/sinat_39411798/article/details/80591605
链接: link.https://blog.csdn.net/hunter___/article/details/90734708

10.安装building package的依赖

到这一步,应该已经安装好了运行核心 ROS 包的所有东西。要创建和管理你自己的 ROS workspace,还有单独发布的许多的工具。比如,rosinstall 是一个常用的命令行工具,使你可以通过一个命令为 ROS 包简单地下载许多源码树。

要安装这个工具及其它的依赖以构建 ROS 包,则运行:

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

11.运行小乌龟测试

分别打开终端,输入

roscore
rosrun turtlesim turtlesim_node
rosrun turtlesim turtle_teleop_key

小乌龟出现,可以由键盘控制移动,则ROS安装成功
出现问题:

Command 'roscore' not found, but can be installed with:

sudo apt install python-roslaunch

解决方法:
需要输入

sudo apt-get install ros-melodic-desktop
source ~/.bashrc

再次启动ROS

roscore

是一条神奇的指令

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Ubuntu 16.04安装ROS kinetic版本--附带安装过程中遇到过的问题及解决方法 的相关文章

随机推荐