• 虚拟机Ubuntu18.04安装对应ROS版本详细教程!(含错误提示解决)


    参考链接:

    Ubuntu18.04安装Ros(最新最详细亲测)_向日葵骑士Faraday的博客-CSDN博客

    1.4 ROS的安装与配置_哔哩哔哩_bilibili

    ROS官网:http://wiki.ros.org/melodic/Installation/Ubuntu

    一、检查cmake

    安装ROS时会自动安装旧版的Cmake3.10.2。所以在安装Ros之前,需要先检查此先是否有安装Cmake。如果之前已经安装新版的cmake,那电脑中存在多个版本的cmake,如果没有安装,则可以在安装完ROS后再安装需要版本的cmake。如何让cmake命令指向我们所需的特定版本?可参考下面这篇博客:

    Unbuntu安装Ros后Cmake变成3.10_ros 默认的cmake版本_向日葵骑士Faraday的博客-CSDN博客

    (安装完ROS后会显示cmake版本为3.10.2)

    二、安装版本检查

    不同的Ubuntu安装的ROS版本不同。Ubuntu18.04对应的ros版本为RS Melodic,不要安装错了。可以去官网melodic/Installation/Ubuntu - ROS Wiki查看其他对应版本。

    三、安装步骤

    1.安装Ubuntu的软件和更新源

    1)先检查Ubuntu软件和更新源

    将四个选项全部选上,同时将下载源更换为国内源。默认的服务器比较慢,换成阿里云,清华,中科大都是可以的。

    2)添加ROS软件源

    打开终端,输入以下命令:

    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'

    2. 设置ROS安装密钥

    公钥是Ubuntu系统的一种安全机制,也是ROS安装中不可缺的一部分。设置ROS安装密钥,输入以下命令:

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

    查看软件包密钥可以使用 apt-key命令。

    3. 更新Ubuntu软件源

    更新Ubuntu软件源,输入以下命令:

    sudo apt update

    4. 安装ROS桌面完整版

    在终端输入以下命令,慢慢等待安装完成:

    这个命令将安装完整的ROS软件,包括ROS,rqt,rviz,机器人通用库,2D / 3D模拟器,导航和2D / 3D感知等等的全套基础组件。

    sudo apt install ros-melodic-desktop-full

    5. 设置ROS环境变量

    设置ROS环境变量,输入以下命令:

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

    6. 安装ROS工具

    安装ROS工具,输入以下命令:

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

    7. 初始化ROS安装

    在初始化ROS安装时,会从外国的网站raw.githubusercontent.com拉取一些信息和文件。这个网站现在被墙了,导致这一步出错。不用爬楼梯的解决办法如下:

    1)修改/etc/hosts文件

    终端输入以下命令并回车:sudo gedit /etc/hosts,将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
    ————————————————
    版权声明:本文为CSDN博主「向日葵骑士Faraday」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/KIK9973/article/details/118755045

    2)修改/etc/resolv.conf 文件

    .终端输入以下命令并回车sudo gedit /etc/resolv.conf将原有的nameserver那一行注释,并添加以下两行后保存:

    nameserver 8.8.8.8 #google域名服务器
    nameserver 8.8.4.4 #google域名服务器

    3)再次执行sudo rosdep init

    显示如上信息则表示rosdep初始化成功,如果出现以下错误提示:

    是因为20-default.list 这个文件已经存在,解决办法就是

    删除20-default.list这个文件。

    终端输入以下命令并回车删除文件:sudo rm /etc/ros/rosdep/sources.list.d/20-default.list

    再次执行sudo rosdep init

    8. rosdep update 更新

    在终端输入以下命令并回车rosdep update

    网络良好的话,很快就更新完成了,更新成功会显示上述信息。如果出现更新超时read operation timed out的错误提示,是因为raw.githubusercontent.com这个网站被墙,国内网拉取信息网速缓慢。

    解决办法1:多次执行rosdep update操作,网络良好的情况下有可能完成所有更新。如果还是不行,使用办法2.

    解决办法2:将更新所需要的文件下载放在本地文件夹,并修改执行更新的路径。在本地完成更新,避免向外国网站拉取信息和文件。

    CSDN作者银时大魔王已经将更新所需的文件整理好上传云中(大家可以去观摩原文):
    链接: https://pan.baidu.com/s/1PhTCqtvScV_XGf9ac0CcCg 提取码: w3ix

    将下载提取出的文件夹移动到/etc/ros文件夹下,终端输入sudo cp -r ../ros_github/ /etc/ros/

    注意:../ros_github/为自己提取安放的路径,需要改成自己的)

    再修改更新文件路径:

    参考链接:Ubuntu 18.04 安装 ROS Melodic 中 sudo rosdep init 和 rosdep update 一定能成功的方法,就硬干-CSDN博客

    1)修改index-v4.yaml路径

    终端输入以下命令回车:sudo gedit /usr/lib/python2.7/dist-packages/rosdistro/__init__.py将该文件中第68行代码注释并添加file:///etc/ros/ros_github/index-v4.yaml,见下图

    2)修改 /etc/ros/rosdep/sources.list.d/20-default.list文件

    终端输入以下命令回车:sudo gedit /etc/ros/rosdep/sources.list.d/20-default.list再将原有内容全部注释 或者 删除。最后添加以下内容在文档中。如下图所示

    再次执行rosdep update

    常见问题:如果遇到Hit缺失,更新不完整的情况 ,可以尝试关闭终端 再次执行更新命令。多尝试几次就能成功。

    到此,ROS安装就算成功了。

    四、检查安装情况:运行小海龟和rviz

    终端输入命令回车:roscore

    出现以上提示则代表安装成功。

    接下来运行小海龟。开启第二个终端输入rosrun turtlesim turtlesim_node会出现一个小海龟

    然后开启第三个终端输入rosrun turtlesim turtle_teleop_key ,接下来就可以通过方向键控制海龟的移动。

    最后检查rviz等高级功能的运行。新开一个终端输入:rosrun rviz rviz,显示以下界面表示运行成功。


    以上就是Unbuntu18.04安装Ros对应版本的全部过程。

  • 相关阅读:
    char*与char[]的区别
    go 地址对齐保证
    JavaWeb--04YApi,Vue-cli脚手架Node.js环境搭建,创建第一个Vue项目
    SANGFOR V批N_v7.0如何开启硬件特征码认证
    【机器学习算法】关联规则2 FPgrowth法算法
    【DETR源码解析】三、Transformer模块
    联想曝新型UEFI漏洞,影响70款数百万台笔记本电脑
    [GO]、数组与切片
    Konva事件机制
    Centos7使用Nginx配置HTTPS正向代理
  • 原文地址:https://blog.csdn.net/weixin_42149550/article/details/133647088