当前位置:   article > 正文

ros小问题之rosdep update time out问题_rosdep update出错timeout

rosdep update出错timeout

        在另外一篇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
  1. $cd /home/mike/rosdistro/rosdep/sources.list.d/
  2. $sudo gedit 20-default.list

之前的内容是:

修改后的内容是:

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

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

  1. FUERTE_GBPDISTRO_URL = 'file:///home/mike/rosdistro/' \
  2. '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:

搞定!

声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop】
推荐阅读
相关标签
  

闽ICP备14008679号