ubuntu18.04下ROS-melodic安装--告别外网站点限制

2023-10-08 07:30

本文主要是介绍ubuntu18.04下ROS-melodic安装--告别外网站点限制,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

ROS安装

  • (强烈推荐鱼香ROS的一键安装!!!什么都不用管)在多次给自己以及帮助他人安装ROS时,饱受rosdep init,rosdep update失败的困扰,其原因就是通常无法连接到国外站点,导致系统文件无法下载。本人站在各位前辈的肩膀上总结出无需外网,无需运气的安装方法,供需要的同学采纳。
    • 首先选择中科大的镜像源(其他的如清华,阿里云亦可)
    • 添加软件源
    • 配置秘钥
    • 更新软件源
    • 安装rosdep 的依赖
    • 安装最全版本的ROS
    • rosdep init?
    • 第一个文件
    • 第二个文件
    • 第三个文件
    • (还没完呢!)配置环境
    • ROS的核心已经安装完了再运行下面的命令将ROS的依赖和软件包构建起来
    • 验证是否ROS是否安装成功
    • 安装完成!

(强烈推荐鱼香ROS的一键安装!!!什么都不用管)在多次给自己以及帮助他人安装ROS时,饱受rosdep init,rosdep update失败的困扰,其原因就是通常无法连接到国外站点,导致系统文件无法下载。本人站在各位前辈的肩膀上总结出无需外网,无需运气的安装方法,供需要的同学采纳。

在rosdep init 之前的步骤基本都是一样的,废话不多说,开始在安装。

首先选择中科大的镜像源(其他的如清华,阿里云亦可)

在这里插入图片描述

添加软件源

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

更新软件源

sudo apt update

安装rosdep 的依赖

sudo apt-get install python-rosdep

安装最全版本的ROS

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

rosdep init?

正常来说需要运行rosdep init这个命令进行rosdep的初始化,其作用就是从raw.githubusercontent.com这个网站里下载github.com/ros/rosdistro这个repository里的文件。这个网站除了翻墙和换网以及运气外基本连不上,我已经将所有文件放到的国内的gitee里面,不需要这个命令可以快速完成下载。
需要先安装git
终端输入

sudo apt-get install git

打开终端输入下行命令下载文件

git clone https://gitee.com/wx_b25a68fb1d/rosdistro.git

将文件放置到/etc/ros下(有的同学可能要问了,诶,我的/etc下没有ros文件啊。没事,这里直接利用根命令在/etc这个文件结下创建一个就行:如下图)
在这里插入图片描述

sudo cp -r /home/pf/rosdistro /etc/ros

然后打开20-default.list文件

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

里面的内容用下面的替换

# os-specific listings first
#yaml https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/osx-homebrew.yaml osx
yaml file:///etc/ros/rosdep/osx-homebrew.yaml osx# generic
#yaml https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/base.yaml
#yaml https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/python.yaml
#yaml https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/ruby.yaml
#gbpdistro https://raw.githubusercontent.com/ros/rosdistro/master/releases/fuerte.yaml fuerte
yaml file:///etc/ros/rosdep/base.yaml
yaml file:///etc/ros/rosdep/python.yaml
yaml file:///etc/ros/rosdep/ruby.yaml
gbpdistro file:///etc/ros/releases/fuerte.yaml fuerte# newer distributions (Groovy, Hydro, ...) must not be listed anymore, they are being fetched from the rosdistro index.yaml instead

之后修改下面三个文件里面的连接

1. /usr/lib/python2.7/dist-packages/rosdep2/gbpdistro_support.py
2. /usr/lib/python2.7/dist-packages/rosdep2/rep3.py
3. /usr/lib/python2.7/dist-packages/rosdistro/__init__.py

第一个文件

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

将FUERTE_GBPDISTRO_URL修改为下面内容

# FUERTE_GBPDISTRO_URL = 'https://raw.githubusercontent.com/ros/rosdistro/master/releases/fuerte.yaml'
FUERTE_GBPDISTRO_URL = 'file:///etc/ros/releases/fuerte.yaml'

记得保存

第二个文件

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

修改REP3_TARGETS_URL内容为下

# REP3_TARGETS_URL = 'https://raw.githubusercontent.com/ros/rosdistro/master/releases/targets.yaml'
REP3_TARGETS_URL = 'file:///etc/ros/releases/targets.yaml'

第三个文件

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

修改DEFAULT_INDEX_URL内容为下

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

现在基本已经完成rosdep init的工作了
但是直接进行rosdep update很可能会出现未进行初始化的问题,原因是rosdep update的路径是/etc/ros而上述修改后的文件在/etc/ros/rosdistro 路径下,不要慌,简单的一个复制就能解决问题,命令如下:

sudo cp -r /etc/ros/rosdistro/rosdep /etc/ros

运行rosdep update

sudo rosdep update

效果如下
在这里插入图片描述

(还没完呢!)配置环境

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

ROS的核心已经安装完了再运行下面的命令将ROS的依赖和软件包构建起来

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

验证是否ROS是否安装成功

roscore

出现下图则成功
在这里插入图片描述

安装完成!

这篇关于ubuntu18.04下ROS-melodic安装--告别外网站点限制的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/163681

相关文章

Zookeeper安装和配置说明

一、Zookeeper的搭建方式 Zookeeper安装方式有三种,单机模式和集群模式以及伪集群模式。 ■ 单机模式:Zookeeper只运行在一台服务器上,适合测试环境; ■ 伪集群模式:就是在一台物理机上运行多个Zookeeper 实例; ■ 集群模式:Zookeeper运行于一个集群上,适合生产环境,这个计算机集群被称为一个“集合体”(ensemble) Zookeeper通过复制来实现

CentOS7安装配置mysql5.7 tar免安装版

一、CentOS7.4系统自带mariadb # 查看系统自带的Mariadb[root@localhost~]# rpm -qa|grep mariadbmariadb-libs-5.5.44-2.el7.centos.x86_64# 卸载系统自带的Mariadb[root@localhost ~]# rpm -e --nodeps mariadb-libs-5.5.44-2.el7

Centos7安装Mongodb4

1、下载源码包 curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.2.1.tgz 2、解压 放到 /usr/local/ 目录下 tar -zxvf mongodb-linux-x86_64-rhel70-4.2.1.tgzmv mongodb-linux-x86_64-rhel70-4.2.1/

Centos7安装JDK1.8保姆版

工欲善其事,必先利其器。这句话同样适用于学习Java编程。在开始Java的学习旅程之前,我们必须首先配置好适合的开发环境。 通过事先准备好这些工具和配置,我们可以避免在学习过程中遇到因环境问题导致的代码异常或错误。一个稳定、高效的开发环境能够让我们更加专注于代码的学习和编写,提升学习效率,减少不必要的困扰和挫折感。因此,在学习Java之初,投入一些时间和精力来配置好开发环境是非常值得的。这将为我

安装nodejs环境

本文介绍了如何通过nvm(NodeVersionManager)安装和管理Node.js及npm的不同版本,包括下载安装脚本、检查版本并安装特定版本的方法。 1、安装nvm curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash 2、查看nvm版本 nvm --version 3、安装

poj 2135 有流量限制的最小费用最大流

题意: 农场里有n块地,其中约翰的家在1号地,二n号地有个很大的仓库。 农场有M条道路(双向),道路i连接着ai号地和bi号地,长度为ci。 约翰希望按照从家里出发,经过若干块地后到达仓库,然后再返回家中的顺序带朋友参观。 如果要求往返不能经过同一条路两次,求参观路线总长度的最小值。 解析: 如果只考虑去或者回的情况,问题只不过是无向图中两点之间的最短路问题。 但是现在要去要回

计算机毕业设计 大学志愿填报系统 Java+SpringBoot+Vue 前后端分离 文档报告 代码讲解 安装调试

🍊作者:计算机编程-吉哥 🍊简介:专业从事JavaWeb程序开发,微信小程序开发,定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事,生活就是快乐的。 🍊心愿:点赞 👍 收藏 ⭐评论 📝 🍅 文末获取源码联系 👇🏻 精彩专栏推荐订阅 👇🏻 不然下次找不到哟~Java毕业设计项目~热门选题推荐《1000套》 目录 1.技术选型 2.开发工具 3.功能

SWAP作物生长模型安装教程、数据制备、敏感性分析、气候变化影响、R模型敏感性分析与贝叶斯优化、Fortran源代码分析、气候数据降尺度与变化影响分析

查看原文>>>全流程SWAP农业模型数据制备、敏感性分析及气候变化影响实践技术应用 SWAP模型是由荷兰瓦赫宁根大学开发的先进农作物模型,它综合考虑了土壤-水分-大气以及植被间的相互作用;是一种描述作物生长过程的一种机理性作物生长模型。它不但运用Richard方程,使其能够精确的模拟土壤中水分的运动,而且耦合了WOFOST作物模型使作物的生长描述更为科学。 本文让更多的科研人员和农业工作者

poj 3422 有流量限制的最小费用流 反用求最大 + 拆点

题意: 给一个n*n(50 * 50) 的数字迷宫,从左上点开始走,走到右下点。 每次只能往右移一格,或者往下移一格。 每个格子,第一次到达时可以获得格子对应的数字作为奖励,再次到达则没有奖励。 问走k次这个迷宫,最大能获得多少奖励。 解析: 拆点,拿样例来说明: 3 2 1 2 3 0 2 1 1 4 2 3*3的数字迷宫,走两次最大能获得多少奖励。 将每个点拆成两个

poj 2195 bfs+有流量限制的最小费用流

题意: 给一张n * m(100 * 100)的图,图中” . " 代表空地, “ M ” 代表人, “ H ” 代表家。 现在,要你安排每个人从他所在的地方移动到家里,每移动一格的消耗是1,求最小的消耗。 人可以移动到家的那一格但是不进去。 解析: 先用bfs搞出每个M与每个H的距离。 然后就是网络流的建图过程了,先抽象出源点s和汇点t。 令源点与每个人相连,容量为1,费用为