rosdep update报错解决方法

rosdep update报错解决方法

rosdep update,这一步经常会出现Timed Out或者Error的报错,查询过网上的很多资料要么说翻墙用外网(有一说一这个的确快),要么用别的方法,比如加入nameserver 8.8.8.8之类的,不过效果一般;

我在网上查阅了很多资料总结了一个自己的解决方案现在分享给大家:

这是一个100%解决的方法,比其他的都好用,亲测!

https://mp.weixin.qq.com/s?__biz=MzU2OTMwNjE2MA==&mid=2247485581&idx=1&sn=62f737ff1372be3f4989268db48e3b3d&chksm=fc81f5d2cbf67cc4a2d06faa50c7299cd5142640688477b10ed23ec0823def51df7df55fd294&mpshare=1&scene=1&srcid=0418UGQALwGKfiZjQEV6zyMN&sharer_sharetime=1618794983242&sharer_shareid=afeae3064916a305ddf93fb157c5a1bc&exportkey=A0dETvIObOUibn%2FzDsGszQ8%3D&pass_ticket=2%2B%2BZutPY9J5g32vU%2F57CdsScgsmDQhCjivQXAEUE9taulLW3HNcAed3iZI8OyU6I&wx_header=0##

1 DOWNLOAD_TIMEOUT延长

rosdep update这一步主要运行的是/usr/lib/python2.7/dist-packages/rosdep2/sources_list.py.bak文件,它只要报错一次我们就需要重头再来,对这个文件进行改写,文件中有一个DOWNLOAD_TIMEOUT=15.0,它的意思就是我们在运行rosdep update如果超过15秒没反应就终止了。

那么我们可以将时间延长些,比如改成60.0之类的。

2 Retry

当然,DOWNLOAD_TIMEOUT改成300也有可能不成功,甚至会出现Error等错误,这也是最不人性化的一步,一次报错没有再来的机会直接终止,这里同样可以进行改写,我们设置Retry=20,意思就是报错一次没关系,我们可以在报错的这一步重新拉取,最多20次,如果还不行那就是人品的问题(手动滑稽).

在github上有大佬对sources_list.py这个文件改写过了,这里贴上链接:
https://github.com/HILMR/rosdep_fix/blob/main/sources_list.py

将文件下载然后替换掉/usr/lib/python2.7/dist-packages/rosdep2/sources_list.py即可;

sudo cp /usr/lib/python2.7/dist-packages/rosdep2/sources_list.py sources_list.py.bak #备份
sudo cp sources_list.py /usr/lib/python2.7/dist-packages/rosdep2/sources_list.py #写入新文件

不过这一步可能会报错cache_tools,运行下述命令即可:

pip install cachetools
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值