ubuntu18.04安装ROS,主要解决rosdep失败问题

0.参考资料

奥特学园ROS教程

1.配置ubuntu的软件和更新

首先打开“软件和更新”对话框,打开后按照下图进行配置(确保你的"restricted", “universe,” 和 "multiverse."前是打上勾的)

2.安装源

官方默认安装源:

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

或来自国内中科大的安装源

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

或来自国内清华的安装源

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'

PS:回车后,可能需要输入管理员密码

3.设置key

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

4.安装

首先需要更新 apt(以前是 apt-get, 官方建议使用 apt 而非 apt-get),apt 是用于从互联网仓库搜索、安装、升级、卸载软件或操作系统的工具。

sudo apt update

等待…

然后,再安装所需类型的 ROS:ROS 多个类型:Desktop-Full、Desktop、ROS-Base。这里介绍较为常用的Desktop-Full(官方推荐)安装: ROS, rqt, rviz, robot-generic libraries, 2D/3D simulators, navigation and 2D/3D perception

sudo apt install ros-melodic-desktop-full

等待…

5.环境设置

配置环境变量,方便在任意 终端中使用 ROS。这一步一定不要忘记,因为有的时候其实已经安装成功了,如果没有这里的添加环境变量,那么运行ros相关的命令仍然会提示找不到命令,就是因为这里没有ros添加到系统环境变量里。

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

6.安装构建依赖

首先安装构建依赖的相关工具

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

然后安装rosdep(可以安装系统依赖)

sudo apt install python-rosdep

初始化rosdep(出错重灾区)

sudo rosdep init
rosdep update

注意:

当执行到最后 sudo rosdep init 是,可能会抛出异常;

错误提示:

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.

原因:

境外资源被屏蔽

6.1. rosdep init 和 rosdep update出错的解决办法

6.1.1.更改域名

由于出错的原因是github服务器的域名被污染,所以按照参考教程中的做法,查找这个ip然后进行替换即可。但是实际操作的时候查找域名直接显示禁止查找这个域名,因此失败。

6.1.2.使用代理

参考: ROS入门教程-rosdep update错误解决方法 gitee原网址:https://gitee.com/ncnynl/rosdep/blob/master/README.md

  • 这个教程中的方法就是利用脚本,在执行rosdep命令之前搭建了代理,从而能够成功
  • 实际操作的时候,使用这种方法之后rosdep init可以成功,但是rosdep update仍然有网站链接不上,但是此时已经显示Update .... cache,中间是什么忘记了,总之意思是已经更新了ROS的缓存,可能就是没有完全更新成功。所以此时即使有网站没有连接成功也没有关系,ROS已经可以正常使用了。
6.1.3.鱼香ROS一键安装或者rosdepc代替rosdep

鱼香ROS是一个公众号,他是整合了ROS资源,然后自己写了脚本,能够一键安装。同时针对rosdep容易出错的问题,专门写了一个rosdepc代替原版的rosdep。
虽然这样比较方便,但是使用这种安装里面掺杂了鱼香ROS作者的一些介绍,感觉不纯净,而且这样对作者的依赖性比较强,所以还是建议安装官方纯净版的。

6.1.4.古月居解决方案

这个具体没有使用,因为使用6.1.2解决了。

6.1.5.其他方法(想到继续补充)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值