rosdep init和rosdep update出错处理

Posted loongembedded

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了rosdep init和rosdep update出错处理相关的知识,希望对你有一定的参考价值。

1. 开发环境

开发电脑是PC机+windows10系统,在win10系统上装虚拟机,虚拟机上装ubuntu20.04系统

2. rosdep init出错

sudo rosdep init 出错

手动创建上面所述的目录: /etc/ros/rosdep/sources.list.d ,自己创建20-default.list文件。
在终端输入:

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

在gedit 20-default.list上粘贴下面的内容:

#os-specific listings first
yaml https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/osx-homebrew.yaml osx
#generic
yaml https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/base.yaml
yaml https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/python.yaml
yaml https://ghproxy.com/https://raw.githubusercontent.com/ros/rosdistro/master/rosdep/ruby.yaml
gbpdistro https://ghproxy.com/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

处理完之后不需要再执行sudo rosdep init ,然后进入下一步rosdep update

3. rosdep update出错

3.1 问题

因网络问题可能会update出错,如下图

3.2 解决方案:

在下面文件添加https://ghproxy.com/
(1) /usr/lib/python3/dist-packages/rosdep2/gbpdistro_support.py

(2) /usr/lib/python3/dist-packages/rosdep2/sources_list.py
(3) /usr/lib/python3/dist-packages/rosdep2/rep3.py
(4) /usr/lib/python3/dist-packages/rosdistro/manifest_provider/github.py此文件两个地方需要修改
(5) /usr/lib/python3/dist-packages/rosdistro/init.py

做上面修改后当时rosdep update没问题了,但后面再用发现又出相同的问题,判断是网络问题。

3.3 新的解决方案

思路:PC机插入TP-LINK无线网卡,这时把win10的PC机当做一部手机,通过WIFI连接到其他路由器上,这样ubuntu20.04就可以使用无线网络了。
(1) win10的PC机插入TP-LINUK,安装好驱动后,网络适配这个可以看到无线网卡

(2) win10由使用有线网络改为采用无线网络

在网络属性中选择自动获取IP地址,然后确定

确定后win10电脑任务栏,也就是电脑显示屏右下角网络图标,点击进去后连接到无线路由器即可。这样ubuntu使用的就是无线网络,然后再rosdep update就解决了问题。

以上是关于rosdep init和rosdep update出错处理的主要内容,如果未能解决你的问题,请参考以下文章

rosdep init 和rosdep update的解决方法,亲测有效

rosdep init 或者rosdep update 连接错误的解决办法

解决ROS中“sudo rosdep init“和“rosdep update“超时问题的最新方法--2021年最新方法

rosdep update一定能通过简单方法rosdep update

rosdep update 超时问题解决

安装ROS,在进行sudo rosdep init报错