解决 rosdep 无法初始化问题

在执行以下命令时:

sudo rosdep init
rosdep update

会报错:

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.

这是因为 GitHub 有时候会被国内网络“封锁”,所以采取手动创建的方式进行解决。
在本地新建文件:

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

#写入:
# os-specific listings first
yaml https://raw.github.com/ros/rosdistro/master/rosdep/osx-homebrew.yaml osx

# generic
yaml https://raw.github.com/ros/rosdistro/master/rosdep/base.yaml
yaml https://raw.github.com/ros/rosdistro/master/rosdep/python.yaml
yaml https://raw.github.com/ros/rosdistro/master/rosdep/ruby.yaml
gbpdistro https://raw.github.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

保存文件,打开终端,重新运行如下指令,一般能成功完成 rosdep 初始化:

rosdep update

如果仍旧无法完成初始化,说明 GitHub 的域名无法访问。因此需要在配置文件里更改解析地址。

sudo gedit /etc/hosts
# 方法一:添加一行:
151.101.84.133  raw.githubusercontent.com

# 方法二:或者在此文件中添加更多域名:
访问下载:https://raw.hellogithub.com/hosts
将里面内容复制粘贴到/etc/hosts中保存退出即可

保存文件后退出重试:

rosdep update

如果不行,就等一会再试,添加的这个 hosts 不是很稳定,有时候可以有时候不可以。

如果以上方法不行,那就使用 rosdepc 进行替代,以后把 rosdep 指令换成 rosdepc 即可。

sudo apt-get install python3-pip
sudo pip3 install rosdepc
sudo rosdepc init
rosdepc update
posted @ 2024-11-16 10:46  郑琰  阅读(71)  评论(0编辑  收藏  举报
#

# #