ROS 安装复盘

本文详细介绍了在Ubuntu18.04上安装ROS Melodic的步骤,包括添加中科大源、设置密钥、安装软件、初始化rosdep、设置环境变量以及解决rosdepinit和rosdepupdate可能出现的网络问题。通过修改python版本和添加代理前缀解决下载问题,确保安装成功并通过turtlesim测试。
摘要由CSDN通过智能技术生成

本文主要参考https://blog.csdn.net/dally2/article/details/118028380,根据自己配置过程中遇到的问题做了一些修补。

一、OS环境

Ubuntu 18.04

二、配置系统软件源

打开“软件和更新”,进入到“Ubuntu软件”界面,
在这里插入图片描述

三、添加中科大源

其它博客提供的是ubuntu的源,在我的电脑下载速度过慢,因此推荐使用中科大源

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

四、开始安装

#1. 设置密钥
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654

#2. 更新包索引
sudo apt update

#3. 下载桌面完整版
sudo apt install ros-melodic-desktop-full

#5 初始化 rosdep
sudo rosdep init (如果报错转向步骤6.1)
rosdep update (如果报错转向步骤6.2#6 设置环境
echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
source ~/.bashrc

#7 安装rosinstall这个工具和其他构建ROS包的依赖项,轻松地从一个命令下载许多 ROS 包的源树
sudo apt-get install python-rosinstall python-rosinstall-generator python-wstool build-essential

五、测试是否安装成功

roscore

在这里插入图片描述
打开一个新的终端

rosrun turtlesim turtlesim_node

在这里插入图片描述
打开一个新的终端

rosrun turtlesim turtle_teleop_key

如果能够用键盘的上下左右控制小乌龟的运动,那么ros应该就安装成功了

六、可能的报错

6.1 sudo rosdep init

第一种报错: rosdep commond not found
解决

sudo apt install python-rosdep

第二种报错: raise DistributionNotFound(req, requirers)
pkg_resources.DistributionNotFound: The ‘rosdep==0.21.0’ distribution was not found and is required by the application
解决: 将默认的python3版本改成python2

$ update-alternatives --list python
可能的报错:update-alternatives: 错误: 无 python 的候选项
$ sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1 
$ sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.5 2
$ sudo update-alternatives --config python

There are 2 choices for the alternative python (providing /usr/bin/python).
  Selection    Path                    Priority   Status
------------------------------------------------------------
* 0            /usr/local/bin/python3   150       auto mode
  1            /usr/bin/python2         150       manual mode
  2            /usr/local/bin/python3   150       manual mode

Press <enter> to keep the current choice[*], or type selection number: 1
update-alternatives: using /usr/bin/python2 to provide /usr/bin/python (python) in manual mode
6.2 rosdep update

思路就是再某些网址前面加上https://ghproxy.com/前缀, 以解决网络问题

#1 进入rosdep2目录
cd /usr/lib/python2.7/dist-packages/rosdep2/

#2 打开sources_list.py
sudo gedit sources_list.py
  (1)将DEFAULT_SOURCES_LIST_URL 改为'https://ghproxy.com/https://raw.githubusercontent.com/
  ros/rosdistro/master/rosdep/sources.list.d/20-default.list'  # 在72行
  (2)在download_rosdep_data(url)函数中加入:
  url="https://ghproxy.com/"+url #在310行,try之后,if之前
  
#3 打开 gbpdistro_support.py
sudo gedit gbpdistro_support.py #第36行,加入“https://ghproxy.com/”代理前缀

#4  打开 rep3.py
 sudo gedit rep3.py #第39行,加入“https://ghproxy.com/”代理前缀

#5 切换至rosdistro目录
cd ../rosdistro

#6 打开__init__.py,改DEFAULT_INDEX_URL
sudo gedit __init__.py #第68行,加入“https://ghproxy.com/”代理前缀

#7 进入manifest_provider目录,为github.py添加前缀
cd manifest_provider
sudo gedit github.py #68行 119行

#8 然后就可以
rosdep update
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值