IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> ros(14):sudo rosdep init和rosdep update报错解决与理论分析----应该绝对好用 -> 正文阅读

[人工智能]ros(14):sudo rosdep init和rosdep update报错解决与理论分析----应该绝对好用

一、报错

1.1 sudo rosdep init报错

????????sudo rosdep init时会由于网络问题报错:

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.

示例如下:

meng@meng:~$ sudo rosdep init
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.

1.2 rosdep update报错

??????? 同时当sudo rosdep init成功后,同样会因为网络问题而在执行rosdep update时卡住 ??????

二、报错解决与理论分析

2.1 下载rosdep文件到本地(不能访问github可以留下邮箱)

??????? rosdep是ros的“依赖项”,ros运行一般需要这些文件;rosdep官方github地址为:https://github.com/ros/rosdistro

??????? 进入网站,可以看出,只有少部分文件在近期更新,一般不是很影响(如果怕影响可以定期更新下载的文件并进行替换),直接下载即可(举个例子,我在大四下自己用自己下载的rosdep到自己的笔记本上用,现在研一下了还可以用)

???????? 下载命令为:(如果新电脑无法下载,可以用别的电脑下载并拷贝过来)

git clone https://github.com/ros/rosdistro

2.2 创建并修改20-default.list文件

??????? 没有20-default.list文件时,创建命令如下:(有的话直接打开修改即可)

mkdir -p /etc/ros/rosdep/sources.list.d/20-default.list

??????? 并打开/etc/ros/rosdep/sources.list.d/20-default.list进行修改:

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

??????? 填入并修改以下文件地址:(注:file://是本地文件链接方式,不同于https等)

    yaml file:///home/xxx/rosdistro/rosdep/osx-homebrew.yaml osx

	# generic 
	yaml file:///home/xxx/rosdistro/rosdep/base.yaml
	yaml file:///home/xxx/rosdistro/rosdep/python.yaml
	yaml file:///home/xxx/rosdistro/rosdep/ruby.yaml
	gbpdistro file:///home/xxx/rosdistro/releases/fuerte.yaml fuerte

??????? 文件地址可以从2.1下载的文件中获得:

?

?

2.3 修改/usr/lib/python2.7/dist-packages/rosdep2/目录下文件

2.3.1 sources_list.py

??????? 打开文件:

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

??????? 在第75行左右,修改DEFAULT_SOURCES_LIST_URL = ‘file:///etc/ros/rosdep/sources.list.d/20-default.list’,其中file:///etc/ros/rosdep/sources.list.d/20-default.list为在2.2中创建文件的地址,示例如下:

# default file to download with 'init' command in order to bootstrap
# rosdep
#DEFAULT_SOURCES_LIST_URL = 'https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/sources.list.d/20-default.list'
DEFAULT_SOURCES_LIST_URL = 'file:///etc/ros/rosdep/sources.list.d/20-default.list'

2.3.2 rep3.py

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

??????? 修改 REP3_TARGETS_URL为本地targets.yaml文件地址,targets.yaml在2.1步骤下载的文件夹里面:

?????

??????? 修改第39行左右,示例如下:

# location of targets file for processing gbpdistro files
#REP3_TARGETS_URL = 'https://raw.github.com/ros/rosdistro/master/releases/targets.yaml'
REP3_TARGETS_URL = 'file:///home/bit/Desktop/softwares/ros_install/rosdistro/releases/targets.yaml' #hxz

2.3.3 __init__.py

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

??????? 注:这个文件如果找不到,试着找init.py这个文件,但一般都是__init__.py

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

??????? 修改DEFAULT_INDEX_URL 为2.1步骤下载的文件路径 'file:///media/meng/xx/ros_install/rosdistro/index-v4.yaml'

??????? 修改示例如下:

# index information

#DEFAULT_INDEX_URL = 'https://raw.githubusercontent.com/ros/rosdistro/master/index-v4.yaml'
DEFAULT_INDEX_URL = 'file:///home/bit/Desktop/softwares/ros_install/rosdistro/index-v4.yaml' #hxz

2.4 rosdep?update

sudo rosdep init #maybe be error,but don't worry
rosdep update

3 进一步理论分析

3.1 sudo rosdep init无法访问的链接:

??????? 打开报错的链接:(从链接可以看出,该链接指向一个文件)

https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/sources.list.d/20-default.list

??????? 网页为文本呈现,内容为:

# os-specific listings first
yaml https://raw.githubusercontent.com/ros/rosdistro/master/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

# newer distributions (Groovy, Hydro, ...) must not be listed anymore, they are being fetched from the rosdistro index.yaml instead

3.1.1 进一步打开osx-homebrew.yaml

??????? 其中apr、assimp、assimp-dev、boost等可以理解为包;

????????osx中os为系统,加上一个x网上一些人说是苹果系统,这里就理解它为系统;

??????? homwbrew是一款Mac OS平台下的软件包管理工具,拥有安装、卸载、更新、查看、搜索等很多实用的功能,这里姑且就理解为包管理工具吧

??????? 至于有的packages对应[],有的对应有内容,我暂时还没理解

https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/osx-homebrew.yaml 内容如下(很长,这里只展示部分)

3.1.2? 打开base.yaml链接

?https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/base.yaml

??????? 这应该是ros的各种组件(对应文件名称base)可以支持的系统(我在这里搜索cmake、turtle没有搜到任何内容

?

?3.1.3 python.yaml

https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/python.yaml

???????? 这应该是ros所依赖(dependency)的各种包

3.1.4 ruby.yaml

??????? 和上面三个类似,应该也是在各个系统各个版本上面ros的依赖问题;我查了下ruby,据说它是一门脚本语言

https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/ruby.yaml

?

3.1.5 fuerte.yaml

??????? 这个文件应该是最容易读懂的啦,它说了最新包的版本及下载地址

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

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-04-07 22:41:41  更:2022-04-07 22:45:09 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 11:26:00-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码