rosdep update一定能通過de簡單方法

leida777發表於2022-03-09

rosdep update命令使用

該方法是可以跳過sudo rosdep init初始化命令設定的,前提是安裝完ros,rosdep update是安裝一些依賴庫,比如在Cartographer、ORB-SLAM等演算法需要使用到一些依賴庫,是必須安裝的,如果不是有需要的,只是使用ros一般依賴,是不需要rosdep update的


重點重複說明:(因為大家錯的較多)

記錄rosdistro存放地址,例如/home/LiFeiHong/rosdistro,自己的改成/home/你使用者名稱/rosdistro,下面都是按照這樣改,你最後報錯如果出現LiFeiHong,說明你路徑錯了;另外本方案在18.04和16.04測試都沒問題,20.04Ubuntu版本可能需要對路徑的python2.7改成python3.0。

1.首先將下面倉庫的內容clone到本地

方法一:

csdn資源直接下載rosdistro

方法二:

git clone

方法三:

如果git clone 速度較慢,可以直接拷貝到網頁下載,速度提高,

不過需要記得將下載包名字rosdistro-master改稱rosdistro


記錄rosdistro存放地址,例如/home/LiFeiHong/rosdistro

如果是自己的改成/home/user/rosdistro,其中user表示使用者名稱,下面都是按照這樣改


2.修改/usr/lib/python2.7/dist-packages/rosdep2/rep3.py檔案

cd /usr/lib/python2.7/dist-packages/rosdep2 

sudo gedit rep3.py

注意:如果進去不到rosdep2資料夾,直接在usr資料夾下搜尋rep3.py。就能查詢到對應的路徑,以下方法同樣。

將REP3_TARGETS_URL = ‘’ 替換成 REP3_TARGETS_URL = 'file:///home/LiFeiHong/rosdistro/releases/targets.yaml'

替換後的/home/LiFeiHong 即為第一步clone內容的存放地址


3.修改/usr/lib/python2.7/dist-packages/rosdistro/__init__.py檔案

cd /usr/lib/python2.7/dist-packages/rosdistro

sudo gedit __init__.py

將原來檔案中的 DEFAULT_INDEX_URL = ‘’ 替換成 DEFAULT_INDEX_URL = 'file:///home/LiFeiHong/rosdistro/index-v4.yaml'

替換後的/home/LiFeiHong 即為第一步clone內容的存放地址


4.配置20-default.list檔案

如果者檢視/etc/ros/rosdep/sources.list.d路徑已經有20-default.list檔案(之前已經執行過sudo rosdep init的原因),就直接跳過4.1步奏,執行4.2步奏,---------------------======

4.1、建立資料夾sources.list.d,並生成20-default.list 檔案

 sudo mkdir -p /etc/ros/rosdep/sources.list.d  

生成20-default.list

cd /etc/ros/rosdep/sources.list.d  

sudo touch 20-default.list 

到這裡已經生成/etc/ros/rosdep/sources.list.d/20-default.list檔案-------------------======

4.2、開啟20-default.list檔案,將裡面內容修改為下面的程式碼,注意內容/home/LiFeiHong修改為自己的記錄路徑

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

內容改成:

# os-specific listings first

yaml file:///home/LiFeiHong/rosdistro/rosdep/osx-homebrew.yaml osx


# generic

yaml file:///home/LiFeiHong/rosdistro/rosdep/base.yaml

yaml file:///home/LiFeiHong/rosdistro/rosdep/python.yaml

yaml file:///home/LiFeiHong/rosdistro/rosdep/ruby.yaml

gbpdistro file:///home/LiFeiHong/rosdistro/releases/fuerte.yaml fuerte


# newer distributions (Groovy, Hydro, ...) must not be listed anymore, they are being fetched from the rosdistro index.yaml instead


注意的是 yaml file://表示固定格式 /home...表示檔案目錄,所以是 yaml file:///

5.最後直接

rosdep update

贈送cartographer簡單安裝教程
連結: https://blog.csdn.net/weixin_44023934/article/details/95006421

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70014825/viewspace-2868800/,如需轉載,請註明出處,否則將追究法律責任。

相關文章