Ubuntu18.04 安装ROS全过程及各种问题解决方法

本文详细记录了在Ubuntu 18.04上安装ROS Melodic版的步骤,包括添加软件源、安装关键组件、环境配置及遇到的常见问题及解决方案。适合新手入门学习。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


前言

ROS(Robot Operating System)是一个适用于机器人的开源的元操作系统。它提供了操作系统应有的服务,包括硬件抽象,底层设备控制,常用函数的实现,进程间消息传递,以及包管理。它也提供用于获取、编译、编写、和跨计算机运行代码所需的工具和库函数。

一、ROS版本选择

操作系统为Ubuntu 18.04 LTS 64bit应采用ROS版本为 Melodic。

二、安装步骤

1.添加ROS软件源

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

2.添加密钥

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F42ED6FBAB17C654

3.更新可升级列表

sudo apt-get update 

4. 安装ROS Melodic

sudo apt-get install ros-melodic-desktop-full

报错1:
下列软件包有未满足的依赖关系:
ros-melodic-desktop-full : 依赖: ros-melodic-perception 但是它将不会被安装
E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。
解决方法1:

sudo apt-get install aptitude
sudo aptitude install  ros-melodic-perception

再次运行进行安装:

sudo apt-get install ros-melodic-desktop-full

报错2:
E: 无法下载 http://mirrors.tuna.tsinghua.edu.cn/ros/ubuntu/pool/main/r/ros-melodic-desktop-full/ros-melodic-desktop-full_1.4.1-0bionic.20220413.183028_amd64.deb 无法发起与 mirrors.tuna.tsinghua.edu.cn:80 (2402:f000:1:400::2) 的连接 - connect (101: 网络不可达)。
解决方法2:

sudo apt-get update 

再次运行进行安装:

sudo apt-get install ros-melodic-desktop-full

成功

5.初始化rosdep

(1)运行:

sudo rosdep init

报错3:
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.
解决方法3:
步骤1:新建一个文件夹,并进入该文件夹,运行

sudo mkdir -p  /home/hqlee/git/
cd /home/hqlee/git/
sudo git clone https://github.com/ros/rosdistro.git

步骤2:另打开一个终端,备份原文件,运行

sudo cp /usr/lib/python2.7/dist-packages/rosdep2/main.py /usr/lib/python2.7/dist-packages/rosdep2/main.py.bak
sudo cp /usr/lib/python2.7/dist-packages/rosdep2/rep3.py /usr/lib/python2.7/dist-packages/rosdep2/rep3.py.bak
sudo cp /usr/lib/python2.7/dist-packages/rosdistro/__init__.py /usr/lib/python2.7/dist-packages/rosdistro/__init__.py.bak
sudo cp /usr/lib/python2.7/dist-packages/rosdep2/sources_list.py /usr/lib/python2.7/dist-packages/rosdep2/sources_list.py.bak

步骤3:替换原文件的网址为本地下载的

sudo gedit /usr/lib/python2.7/dist-packages/rosdep2/main.py
sudo gedit /usr/lib/python2.7/dist-packages/rosdep2/rep3.py
sudo gedit /usr/lib/python2.7/dist-packages/rosdistro/__init__.py
sudo gedit /usr/lib/python2.7/dist-packages/rosdep2/sources_list.py

将上述命令打开的文件中的 https://raw.githubusercontent.com/ros/rosdistro/master 全部替换为 file:///home/hqlee/git/rosdistro

继续运行:

sudo rosdep init

报错4:ERROR: default sources list file already exists:
/etc/ros/rosdep/sources.list.d/20-default.list
Please delete if you wish to re-initialize
解决方法4:

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

继续运行:

sudo rosdep init

成功
(2)运行:

rosdep update

报错5:
解决方法5:
备份并运行

sudo cp /etc/ros/rosdep/sources.list.d/20-default.list /etc/ros/rosdep/sources.list.d/20-default.list.bak
sudo gedit /etc/ros/rosdep/sources.list.d/20-default.list

将上述命令打开的文件中的https://raw.githubusercontent.com/ros/rosdistro/master 全部替换为 file:///home/hqlee/git/rosdistro
继续运行:

rosdep update

成功

6.设置环境变量

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

7.安装rosinstall

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

8.安装catkin编译器

sudo apt-get install ros-melodic-catkin python-catkin-tools

三、测试是否安装成功

打开三个终端分别运行以下三个命令

roscore
rosrun turtlesim turtlesim_node
rosrun turtlesim turtle_teleop_key

如出现小海龟则说明安装成功:
在这里插入图片描述
完结撒花!!!!!!!!!!!!!!!!!!!!!!!!!!!!

总结

上述是本人作为一个新手的安装过程,其中出现了不少的bug,特此把我遇到的问题和解决方法与大家分享一下,如果大家有其他什么安装问题欢迎在评论区留言,大家可以相互讨论一下!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值