1、检查软件源中对号是否全选
2、添加新的软件源
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
3、添加密钥
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654
4、更新软件源
sudo apt update
此时若出现错误
W: GPG 错误:https://packages.microsoft.com/repos/edge stable InRelease: 由于没有公钥,无法验证下列签名: NO_PUBKEY EB3E94ADBE1229CF
E: 仓库 “https://packages.microsoft.com/repos/edge stable InRelease” 没有数字签名。
5、替换报错的密钥
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EB3E94ADBE1229CF
6、输入
wget http://packages.ros.org/ros.key
sudo apt-key add ros.key
sudo apt-get update --fix-missing
7、安装和ubuntu版本对应的ros
Ubuntu版本 | ROS名称 | 常用简称 |
20.04 | ROS Noetic Ninjemys | Noetic |
18.04 | ROS Melodic Morenia | Melodic |
16.04 | ROS Kinetic Kame | Kinetic |
我的是ubuntu20,所以输入:
sudo apt install ros-noetic-desktop-full
8、ros的初始化
8-1、安装辅助包
sudo apt install python3-rosdep2
8-2、初始化
sudo rosdep init
8-3、修正错误
此时会出现错误:ERROR: cannot download default sources list from:https : //raw.githubusercontent.com/ros/rosdistro/master/rosdep/sources.list.d/20-default.listWebsite may be down.
更新rosdep
rosdep update
8-4、出现time out错误
sudo gedit /usr/lib/python3/dist-packages/rosdep2/sources_list.py
在打开的文件中键入:
url="https://ghproxy.com/"+url
然后保存
用同样的方法修改/usr/lib/python3/dist-packages/rosdistro/__init__.py里面的DEFAULT_INDEX_URL。
即将DEFAULT_INDEX_URL 进行如下替换:
DEFAULT_INDEX_URL = 'https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/index-v4.yaml'
在/usr/lib/python3/dist-packages/rosdep2/gbpdistro_support.py 第204行添加如下代码
gbpdistro_url = "https://ghproxy.com/" + gbpdistro_url
除此处外,下述文件中也含有github地址,分别是:
sudo gedit /usr/lib/python3/dist-packages/rosdep2/gbpdistro_support.py
加入FUERTE_GBPDISTRO_URL="https://ghproxy.com/" + FUERTE_GBPDISTRO_URL
DOWNLOAD_TIMEOUT = 15.0改成DOWNLOAD_TIMEOUT = 500.0
sudo gedit /usr/lib/python3/dist-packages/rosdep2/sources_list.py
DEFAULT_SOURCES_LIST_URL="https://ghproxy.com/"+DEFAULT_SOURCES_LIST_URL
DOWNLOAD_TIMEOUT = 15.0改成DOWNLOAD_TIMEOUT = 500.0
sudo gedit /usr/lib/python3/dist-packages/rosdep2/rep3.py
REP3_TARGETS_URL="https://ghproxy.com/"+REP3_TARGETS_URL
DOWNLOAD_TIMEOUT = 15.0改成DOWNLOAD_TIMEOUT = 500.0
sudo gedit /usr/lib/python3/dist-packages/rosdistro/manifest_provider/github.py
68行 119行 url="https://ghproxy.com/"+url
均可通过在地址前添加https://ghproxy.com/前缀来应用代理服务。
8-5、重新更新rosdep
rosdep update
成功~~~~
9、配置环境变量
echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc
注意noetic位置根据安装的ros版本而变,如果你安装的是melodic那就写melodic
10、
11、安装rosinstall
sudo apt install python3-rosinstall python3-rosinstall-generator python3-wstool
之后的内容见下链接
详细介绍如何在ubuntu20.04中安装ROS系统,超快完成安装(最新版教程)_石头1666的博客-CSDN博客_ubuntu20.04安装ros