ros小问题之rosdep update time out问题

        在另外一篇ROS 2边学边练系列的文章里有写碰到这种问题的解决方法(主要参考了其他博主的文章,只是针对ROS 2做了些修改调整),此处单拎出来方便查找。

        在ROS 2中执行rosdep update时,报出如下错误:

其实原因大家也能猜个七七八八,git资源链接里面的https://raw.githubusercontent.com由于某些众所周知的原因访问不了。解决步骤简述如下。

1. 将rosdistro clone到自己的家目录下(我的是/home/mike):
$git clone https://github.com/ros/rosdistro.git

 下载完成后(如果github clone失败请往上翻找到解决办法),我们检查下:

里面包含了很多ROS版本,包括我们的iron,那就对了;

2. 修改4个文件
2.1 20-default.list
$cd /home/mike/rosdistro/rosdep/sources.list.d/
$sudo gedit 20-default.list 

之前的内容是:

修改后的内容是:

2.2 gbpdistro_support.py
$sudo gedit /usr/lib/python3/dist-packages/rosdep2/gbpdistro_support.py

找到宏FUERTE_GBPDISTRO_URL,替换后的内容为:

FUERTE_GBPDISTRO_URL = 'file:///home/mike/rosdistro/' \
    'releases/fuerte.yaml'
2.3 rep3.py
$sudo gedit /usr/lib/python3/dist-packages/rosdep2/rep3.py

找到宏REP3_TARGETS_URL,替换后的内容为:

REP3_TARGETS_URL = 'file:///home/mike/rosdistro/releases/targets.yaml'
2.4 __init__.py
sudo gedit /usr/lib/python3/dist-packages/rosdistro/__init__.py

找到宏DEFAULT_INDEX_URL,替换后的内容为:

DEFAULT_INDEX_URL = 'file:///home/mike/rosdistro/index-v4.yaml'
3. 替换20-default.list

如果你之前执行过sudo rosdep init命令,那么在/etc/ros/rosdep/sources.list.d路径下会生成一个20-default.list文件,我们将第一步修改好的该同名文件覆盖掉/etc/ros/rosdep/sources.list.d/20-default.list即可:

sudo cp /home/mike/rosdistro/rosdep/sources.list.d/20-default.list /etc/ros/rosdep/sources.list.d/

最后我们再来执行一次rosdep update:

搞定!

  • 6
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值