Ubuntu18.04(Ubuntu20.04)安装ros(顺利解决 sudo rosdep init 与rosdep update 存在的问题,附保姆级图文流程)
前言
安装了很多次,东拼西凑好多博主的方法,最后找到适合自己的,并且将Ubuntu卸载重装,所有环境都重新安装,依然没有出现问题。
安装
Ubuntu18.04对应的ros版本为:Melodic,安装时要注意(Ubuntu20.04安装ros只需要将下列终端命令中的所有 Melodic 改为 noetic,因为Ubuntu20.04对应的Ros版本为 noetic)
下载(不建议)
打开软件和更新做以下操作
中科大源,在终端输入:
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 apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
然后回车
更新软件包列表,在终端输入:
sudo apt update
回车
安装,在终端输入:
sudo apt install ros-melodic-desktop-full
选择y,然后回车
设置环境变量,在终端输入:
echo "source /opt/ros/melodic/setup.bash" >> ~/.bashrc
source ~/.bashrc
下载组件,在终端输入:
sudo apt install python-rosdep python-rosinstall python-rosinstall-generator python-wstool build-essential
然后回车
选择y,然后回车
rosdep init 初始化,在终端输入:
sudo rosdep init
然后回车,一般会报错
解决1、2:
1.终端输入以下命令并回车:
sudo gedit /etc/hosts
把下面这些地址拷贝到hosts文件末尾,然后保存
199.232.28.133 raw.githubusercontent.com
192.30.253.118 gist.github.com
185.199.110.153 github.io
151.101.113.194 github.global.ssl.fastly.net
52.216.227.168 github-cloud.s3.amazonaws.com
52.74.223.119 github.com
199.232.28.133 avatars1.githubusercontent.com
199.232.28.133 avatars2.githubusercontent.com
199.232.28.133 avatars0.githubusercontent.com
199.232.28.133 avatars3.githubusercontent.com
199.232.28.133 user-images.githubusercontent.com
199.232.28.133 avatars.githubusercontent.com
199.232.28.133 github.map.fastly.net
199.232.28.133 avatars7.githubusercontent.com
54.239.31.69 aws.amazon.com
54.239.30.25 console.aws.amazon.com
54.239.96.90 ap-northeast-1.console.aws.amazon.com
54.240.226.81 ap-southeast-1.console.aws.amazon.com
54.240.193.125 ap-southeast-2.console.aws.amazon.com
54.239.54.102 eu-central-1.console.aws.amazon.com
177.72.244.194 sa-east-1.console.aws.amazon.com
176.32.114.59 eu-west-1.console.aws.amazon.com
54.239.31.128 us-west-1.console.aws.amazon.com
54.240.254.230 us-west-2.console.aws.amazon.com
54.239.38.102 s3-console-us-standard.console.aws.amazon.com
54.231.49.3 s3.amazonaws.com
52.219.0.4 s3-ap-northeast-1.amazonaws.com
54.231.242.170 s3-ap-southeast-1.amazonaws.com
54.231.251.21 s3-ap-southeast-2.amazonaws.com
54.231.193.37 s3-eu-central-1.amazonaws.com
52.218.16.140 s3-eu-west-1.amazonaws.com
52.92.72.2 s3-sa-east-1.amazonaws.com
54.231.236.6 s3-us-west-1.amazonaws.com
54.231.168.160 s3-us-west-2.amazonaws.com
52.216.80.48 github-cloud.s3.amazonaws.com
54.231.40.3 github-com.s3.amazonaws.com
52.216.20.171 github-production-release-asset-2e65be.s3.amazonaws.com
52.216.228.168 github-production-user-asset-6210df.s3.amazonaws.com
————————————————
版权声明:本文为优快云博主「银时大魔王」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.youkuaiyun.com/sinat_25923849/article/details/107976434
2.终端输入以下命令并回车
sudo gedit /etc/resolv.conf
将原有的nameserver那一行注释,并添加以下两行后保存:
nameserver 8.8.8.8 #google域名服务器
nameserver 8.8.4.4 #google域名服务器
终端最后再次输入:
sudo rosdep init
显示如下图所示,则成功!
在终端输入:
rosdep update
然后回车
会出现错误:我这里错误有两种形式
解决:
终端输入:
sudo gedit /usr/lib/python2.7/dist-packages/rosdep2/sources_list.py
添加一行代码:
url="https://ghproxy.com/"+url
然后保存
终端输入:
sudo gedit /usr/lib/python2.7/dist-packages/rosdistro/__init__.py
将原来的DEFAULT_INDEX_URL网址前加: https://ghproxy.com/
DEFAULT_INDEX_URL = 'https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/index-v4.yaml'
然后保存
终端输入:
sudo gedit /usr/lib/python2.7/dist-packages/rosdep2/gbpdistro_support.py
在第36行网址前边加:
https://ghproxy.com/
然后保存
终端输入:
sudo gedit /usr/lib/python2.7/dist-packages/rosdep2/sources_list.py
在第72行网址前边加:
https://ghproxy.com/
然后保存
终端输入:
sudo gedit /usr/lib/python2.7/dist-packages/rosdep2/rep3.py
在第39行网址前边加:
https://ghproxy.com/
然后保存
终端输入:
sudo gedit /usr/lib/python2.7/dist-packages/rosdistro/manifest_provider/github.py
在第68、119行网址前边加:
https://ghproxy.com/
然后保存
在终端输入:
sudo gedit /usr/lib/python2.7/dist-packages/rosdep2/gbpdistro_support.py
在第204行添加一行代码:
gbpdistro_url = "https://ghproxy.com/" + gbpdistro_url
然后保存
终端输入:
rosdep update
问题解决!
检查是否安装成功,终端输入:
roscore
然后回车
打开第二个新的终端输入:
rosrun turtlesim turtlesim_node
然后回车,出现小海龟
打开第三个终端输入:
rosrun turtlesim turtle_teleop_key
然后回车
用方向键可以控制小乌龟,我画了一个四边形。
检查rviz等功能的运行
打开第一个终端输入:
roscore
然后回车
打开第二个终端输入:
rosrun rviz rviz
然后回车
出现下图,表示没有问题
安装完成!
如果此文章对您有所帮助,那就请点个赞吧,收藏+关注 那就更棒啦,十分感谢!!!