Ubuntu安装ROS(每个步骤图文详细)

Ubuntu安装ROS(每个步骤图文详细)

  • 前言(推荐安装)
    • ROS对应的Ubuntu的版本
    • 换源
    • 安装ROS
    • 一、添加ROS软件源
    • 二、添加密钥
    • 三、安装ROS-melodic
  • 四、初始化rosdep
    • 可能出现的问题:
      • 一 、 **sudo: rosdep:找不到命令**
      • 二、raw.githubusercontent.com网络下载问题
    • 通过修改host解决
      • 解决
    • ERROR: default sources list file already exists:
  • 五、安装rosinstall
    • 可能出现的问题—缺失依赖包
  • 六、配置同步环境
  • 七、测试ROS—(小海龟)

前言(推荐安装)

这里非常非常非常推荐——小鱼ros一键安装
终端执行

wget http://fishros.com/install -O fishros && . fishros

Ubuntu安装ROS(每个步骤图文详细)_第1张图片
这里完全可以按照提示安装即可,速度快安装稳定
如果有小伙伴有兴趣尝试手动安装的过程,按照下文安装即可

ROS对应的Ubuntu的版本

Ubuntu版本 ROS版本
ubuntu16.04 ros-kinetic
ubuntu18.04 ros-melodic
ubuntu20.04 ros-noetic

这里以Ubuntu18.04作为本篇安装例子(安装步骤等效各个版本,具体安装可进行修改)

换源

在“软件和更新”中选择“下载自:其他站点”中设置国内的站点—(这里选择的是清华大学的站点)
Ubuntu安装ROS(每个步骤图文详细)_第2张图片
设置完成后进行同步更新

sudo apt-get update

Ubuntu安装ROS(每个步骤图文详细)_第3张图片

安装ROS

一、添加ROS软件源

新建终端运行

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

在这里插入图片描述

二、添加密钥

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

显示已导入表示添加完成
Ubuntu安装ROS(每个步骤图文详细)_第4张图片

三、安装ROS-melodic

终端输入:

sudo apt-get update   
sudo apt-get install ros-melodic-desktop-full
sudo apt-get install ros-melodic-rqt*

输入“Y”确认安装:
Ubuntu安装ROS(每个步骤图文详细)_第5张图片
apt-get update 更新之前添加的软件源

四、初始化rosdep

终端输入:

sudo rosdep init

可能出现的问题:

一 、 sudo: rosdep:找不到命令

在这里插入图片描述
执行安装:python-rosdep2

sudo apt install python-rosdep2

二、raw.githubusercontent.com网络下载问题

在这里插入图片描述

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

通过修改host解决

首先访问 The Best IP Address, Email and Networking Tools - IPAddress.com,查询 raw.githubusercontent.comip地址
Ubuntu安装ROS(每个步骤图文详细)_第6张图片
打开host文件

sudo gedit /etc/hosts

在host文本的最后一行添加

185.199.109.133 raw.githubusercontent.com

Ubuntu安装ROS(每个步骤图文详细)_第7张图片
再次执行

sudo rosdep init

写入成功
Ubuntu安装ROS(每个步骤图文详细)_第8张图片
根据推荐提示执行:

rosdep update

若还是因为网络问题无法进行安装
Ubuntu安装ROS(每个步骤图文详细)_第9张图片

解决

参考《解决ROS系统 rosdep update超时问题的新方法》
修改位于/usr/lib/python2.7/dist-packages/rosdep2/sources_list.py的函数download_rosdep_data

 cd /usr/lib/python2.7/dist-packages/rosdep2/
 sudo gedit sources_list.py

打开文件后,搜索定位到def download_rosdep_data(url): 函数
添加:

url="https://ghproxy.com/"+url 
        if url.startswith("http://") or url.startswith("https://"):
            url_request = request.Request(url, headers={'User-Agent': 'rosdep/{version}'.format(version=__version__)})
        else:
            url_request = url

如图所示:
Ubuntu安装ROS(每个步骤图文详细)_第10张图片
同时修改路径**/usr/lib/python2.7/dist-packages/rosdistro/init.py**

cd /usr/lib/python2.7/dist-packages/rosdistro
sudo gedit __init__.py

DEFAULT_INDEX_URL 进行如下替换:

DEFAULT_INDEX_URL = 'https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/index-v4.yaml'

Ubuntu安装ROS(每个步骤图文详细)_第11张图片
PS:之后在执行`sudo rosdep init更新时遇到网络问题时:均可以在地址前面加入https://ghproxy.com/

/usr/lib/python2.7/dist-packages/rosdep2/gbpdistro_support.py 36行
/usr/lib/python2.7/dist-packages/rosdep2/sources_list.py 72行
/usr/lib/python2.7/dist-packages/rosdep2/rep3.py	39行
/usr/lib/python2.7/dist-packages/rosdistro/manifest_provider/github.py 68119

其中,对于第五个地址的网络错误:

https://raw.githubusercontent.com/ros/rosdistro/master/releases/fuerte.yaml

/usr/lib/python2.7/dist-packages/rosdep2/gbpdistro_support.py 第204行添加如下代码

gbpdistro_url = "https://ghproxy.com/" + gbpdistro_url

ERROR: default sources list file already exists:

如果出现这个错误
Ubuntu安装ROS(每个步骤图文详细)_第12张图片
执行:

sudo rm /etc/ros/rosdep/sources.list.d/20-default.list
sudo rosdep update
sudo rosdep init

更新结果:
Ubuntu安装ROS(每个步骤图文详细)_第13张图片

五、安装rosinstall

sudo apt-get install python-rosinstall

可能出现的问题—缺失依赖包

安装缺失的依赖环境

sudo apt-get install python-pip
sudo pip install -U rosinstall

六、配置同步环境

进入ubuntu环境设置文件

source /opt/ros/melodic/setup.bash

在文件末尾添加

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

一切安装完成后进入opt/ros/melodic可以看到已经安装成功Ubuntu安装ROS(每个步骤图文详细)_第14张图片

七、测试ROS—(小海龟)

分别开三个终端依次执行

roscore
rosrun turtlesim turtlesim_node
rosrun turtlesim turtle_teleop_key

出现如图所示即代表安装成功
Ubuntu安装ROS(每个步骤图文详细)_第15张图片
至此全部的安装已经完成

你可能感兴趣的:(python,c++,ubuntu,linux,运维)