rosdep init || rosdep update || 出错?链接失败?换源!

问题简述

本文主要解决rosdep init失败,rosdep update失败的问题。

rosdep init失败和rosdep update失败,最常见的问题就是网络链接失败。有的朋友会说“诶我使用了tz啊”,但是这里的链接失败对time out的要求不低,虽然你使用了“tz”,但是延迟太高的话,依然是连不上的,即使连上了,装依赖也不会快速。

针对这个问题,常见的办法有:

1.  改hosts

2. 使用效果更好的网

3. 调大rosdep的time out,等待相应。

问题的解决:换源

真是空有宝山而不自知,其实清华镜像已经把路铺好了。

熟悉我的人都知道我经常使用清华镜像,在安装ros2的那篇文章中,我也使用清华镜像对ros2进行换源,大大加快了安装包的速度(突然发现好像没有写这一篇,当时觉得安装ros2的教程不少而且很多人都是用的鱼香ros大佬的脚本安装,就没有写),贴个清华镜像安装ros2部分的链接:ros2 | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror

下面就是关于rosdep换源的部分了。

rosdistro | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror 

1 手动实现init

我们通过手动对文件的操作在事实上手动完成了rosdep init这一步,因为rosdep init默认链接的是国外源,没有暴露在外的参数可设置,因此相比之下还是手动操作文件模拟init的过程更加容易。

sudo mkdir -p /etc/ros/rosdep/sources.list.d/
sudo curl -o /etc/ros/rosdep/sources.list.d/20-default.list https://mirrors.tuna.tsinghua.edu.cn/github-raw/ros/rosdistro/master/rosdep/sources.list.d/20-default.list

如果你观察了rosdep init的报错,就会发现它要生成和操作的也是这样一个文件夹,现在我们代替它做了,就不需要init这一步了。

2 rosdep换源

export ROSDISTRO_INDEX_URL=https://mirrors.tuna.tsinghua.edu.cn/rosdistro/index-v4.yaml
rosdep update

可以看到,这一步还是有一个rosdistro_index_url的环境变脸,改变了这个环境变量后,update的源就被改变了。为了将这个设为“永久生效”,我们需要写入当前shell的配置文件中。 

echo 'export ROSDISTRO_INDEX_URL=https://mirrors.tuna.tsinghua.edu.cn/rosdistro/index-v4.yaml' >> ~/.bashrc

但是需要注意的是,如果你的shell不是bash,而是其他一些常见的shell比如zsh,那你可不要憨憨地不对命令做改动哈!

### 回答1: 您好,可能是由于网络连接问题或者ROS源的问题导致的。您可以尝试以下解决方法: 1. 检查网络连接是否正常,确保能够访问ROS源。 2. 尝试更换ROS源,可以使用清华大学的ROS源,具体操作可以参考以下命令: ``` sudo sh -c 'echo "deb https://mirrors.tuna.tsinghua.edu.cn/ros/ubuntu/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list' ``` 3. 如果以上方法都无法解决问题,可以尝试手动更新rosdep,具体操作可以参考以下命令: ``` sudo apt-get install python-rosdep sudo rosdep init rosdep update ``` 希望以上方法能够帮助您解决问题。 ### 回答2: 在Ubuntu 18.04下使用ROS命令`rosdep update`时出现错误可能有不同的原因。以下是可能的解决方法: 1. 首先,请确保网络连接正常。ROS使用网络来下载所需的软件包和依赖项。你可以尝试使用浏览器打开网页来确认网络是否正常工作。 2. 确保你的ROS安装和环境配置正确。你可以尝试使用其他ROS命令,如`rosversion`来查看ROS是否正确安装和配置。 3. 检查ROS软件源列表配置。可以通过检查 `/etc/apt/sources.list.d/ros-latest.list` 文件或通过命令 `apt-cache policy ros-melodic-desktop-full` 来查看软件源配置信息。 4. 如果在更新过程中由于某些软件包或依赖项找不到而出现错误,可以尝试使用`apt-get`命令手动安装所需的软件包。例如,你可以尝试执行以下命令安装`ros-melodic-ros-core`软件包: ``` sudo apt-get install ros-melodic-ros-core ``` 5. 如果以上方法仍然无法解决问题,还可以尝试更新`rosdep`工具本身。可以使用以下命令更新`rosdep`: ``` sudo apt-get install python-rosdep sudo rosdep init rosdep update ``` 请根据具体的错误信息和情况尝试以上方法,并确保按照官方文档正确安装和配置ROS。 ### 回答3: 当我们在Ubuntu 18.04上运行"rosdep update"命令时,可能会遇到一些错误。这个错误通常与网络连接或软件源配置有关。 首先,我们需要确保我们的网络连接是正常的。我们可以尝试使用ping命令来测试与远程服务器的连接是否正常。如果ping命令成功,那么我们的网络连接就没有问题。 如果我们的网络连接正常,那么问题可能是由于软件源配置不正确所导致的。我们需要检查我们的软件源配置文件(/etc/apt/sources.list.d/ros-latest.list),确保它包含正确的Ubuntu版本和ROS版本。我们可以使用文本编辑器打开这个文件,检查其中的内容。 另外,我们还可以尝试更改ROS的安装源。ROS的官方源源提供了全球各地的镜像,我们可以尝试使用其它镜像进行更新。我们可以编辑/etc/ros/rosdep/sources.list.d/20-default.list文件,将其中的默认源更改为其它可用的镜像源。 最后,如果以上方法都没有解决问题,我们还可以尝试重装ROS。我们可以使用apt-get命令将ROS完全卸载,然后重新安装。请注意,这将删除我们现有的ROS安装和配置文件,所以在执行此操作之前,请备份任何重要的文件。 总结来说,当我们在Ubuntu 18.04上运行"rosdep update"命令时遇到错误,我们可以首先检查网络连接是否正常,然后检查软件源配置是否正确。如果问题仍然存在,我们可以尝试更改ROS的安装源或重装ROS。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

早上真好

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值