• 从源码上解决rosdep update失败问题


    (一)卸载官方的rosdep、rosdistro

    1. 卸载rosdistro
    # python2
    sudo apt-get purge python-rosdistro
    
    # python3
    sudo apt-get purge python3-rosdistro
    
    • 1
    • 2
    • 3
    • 4
    • 5
    1. 卸载rosdep
    # python2
    sudo apt-get purge python-rosdep
    
    # python3
    sudo apt-get purge python3-rosdep
    
    • 1
    • 2
    • 3
    • 4
    • 5
    1. 删除下载的20-default.list
    sudo rm -rf /etc/ros/rosdep/sources.list.d/20-default.list
    
    • 1

    (二)下载安装rosdep、rosdistro

    根据系统版本下载相应的rosdep、rosdistro:

    1. ROS Kinetic(Ubuntu 16.04 python2)
    # 下载国内的rosdep
    wget http://www.aigrantli.com:1080/GrantLi/rosdep/uploads/35cf1afb1107970c1ec78dbf5ef6663b/rosdep-0.22.1-py2-none-any.whl
    # 下载国内的rosdistro
    wget http://www.aigrantli.com:1080/GrantLi/rosdistro-python/uploads/35ef18efc558999d4c4e32015eebc20b/rosdistro-0.9.0-py2-none-any.whl
    
    # 安装rosdistro
    sudo pip install rosdistro-0.9.0-py2-none-any.whl
    # 安装rosdep
    sudo pip install rosdep-0.22.1-py2-none-any.whl
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    1. ROS Melodic(Ubuntu 18.04 python2)
    # 下载国内的rosdep
    wget http://www.aigrantli.com:1080/GrantLi/rosdep/uploads/35cf1afb1107970c1ec78dbf5ef6663b/rosdep-0.22.1-py2-none-any.whl
    # 下载国内的rosdistro
    wget http://www.aigrantli.com:1080/GrantLi/rosdistro-python/uploads/35ef18efc558999d4c4e32015eebc20b/rosdistro-0.9.0-py2-none-any.whl
    
    # 安装rosdistro
    sudo pip install rosdistro-0.9.0-py2-none-any.whl
    # 安装rosdep
    sudo pip install rosdep-0.22.1-py2-none-any.whl
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    1. ROS Noetic(Ubuntu 20.04)
    # 下载国内的rosdep
    wget http://www.aigrantli.com:1080/GrantLi/rosdep/uploads/49ea4ce804b58bc7e16c4336c04d1664/rosdep-0.22.1-py3-none-any.whl
    # 下载国内的rosdistro
    wget http://www.aigrantli.com:1080/GrantLi/rosdistro-python/uploads/bb3db475bf0fab68b98dd2af22733a8e/rosdistro-0.9.0-py3-none-any.whl
    
    # 安装rosdistro
    sudo pip install rosdistro-0.9.0-py3-none-any.whl
    
    # 安装rosdep
    sudo pip install rosdep-0.22.1-py3-none-any.whl
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    如果需要根据自己的系统手动编译,请见(四)手动编译rosdep、rosdistro

    (三)测试rosdep update

    sudo rosdep init
    rosdep update
    
    • 1
    • 2

    (四)手动编译rosdep、rosdistro(可选)

    1.下载修改的rosdep、rosdistro源码

    mkdir -p ~/rosdep_ws
    git clone http://www.aigrantli.com:1080/GrantLi/rosdep.git
    git clone http://www.aigrantli.com:1080/GrantLi/rosdistro-python.git
    
    • 1
    • 2
    • 3

    2.安装依赖及编译生成的目录

    # 下载wheel,用于打包成python软件包
    sudo pip install wheel
    
    # 创建rosdep whl文件保存目录
    mkdir -p ~/rosdep_ws/rosdep_whl
    # 创建rosdistro whl文件保存目录
    mkdir -p ~/rosdep_ws/rosdistro_whl
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    1. 编译rosdep
    # 进入rosdep源码目录
    cd ~/rosdep_ws/rosdep
    
    # 编译rosdep
    pip wheel --wheel-dir=~/rosdep_ws/rosdep_whl ./
    
    • 1
    • 2
    • 3
    • 4
    • 5
    1. 编译rosdistro
    # 进入rosdistro源码目录
    cd ~/rosdep_ws/rosdistro-python
    
    # 编译rosdistro
    pip wheel --wheel-dir=~/rosdep_ws/rosdistro_whl ./
    
    • 1
    • 2
    • 3
    • 4
    • 5

    5.安装rosdistro

    # 进入rosdistro_whl目录
    cd ~/rosdep_ws/rosdistro_whl
    
    # 安装rosdistro whl
    sudo pip install rosdistro-0.9.0-py3-none-any.whl
    
    • 1
    • 2
    • 3
    • 4
    • 5

    其中rosdistro-0.9.0-py3-none-any.whl按照实际生成的whl文件名替换。

    6.安装rosdep

    # 进入rosdep_whl源码目录
    cd ~/rosdep_ws/rosdep_whl
    
    # 安装rosdep whl
    sudo pip install rosdep-0.22.1-py3-none-any.whl
    
    • 1
    • 2
    • 3
    • 4
    • 5

    其中rosdep-0.22.1-py3-none-any.whl按照实际生成的whl文件名替换。

    7.测试rosdep update
    见(三)测试rosdep update。

    更多操作细节请移步到从源码上解决rosdep update失败问题

  • 相关阅读:
    「C++小游戏教程」计时器
    最热门的跨考考研5大专业是哪些?
    ​美元兑加元价格分析:空头按兵不动 寻求展开大幅整理
    shell 判断文件是否存在(csh bash)
    iOS实现代码混淆
    JAVA虚拟机--JVM
    四、伊森商城 前端基础-Vue MVVM思想&Vue安装&单向绑定 p21
    opencv实现目标跟踪及视频转存
    刘未鹏 - 我在南大的七年 有感
    车机中 Android Audio 音频常见问题分析方法实践小结
  • 原文地址:https://blog.csdn.net/GJXS2017/article/details/128179086