學會ROS中這個指令,讓功能包錯誤無所遁形!

你們好,我是小魚。小魚發現不少同窗在學習和使用ROS的過程當中都會遇到找不到某個包的問題。錯誤大概像下面這個樣子。算法

圖片

遇到這種狀況該怎麼檢查呢?bash

今天小魚帶你們認識一個指令rospack,這個指令能夠查看當前工做空間下全部的包的列表。markdown

若是列表中沒有這個庫,那就考慮有沒有source環境或者安裝了學習

若是列表中有,可使用rospack查找到某個包所在的具體路徑,看看這個包下面是否有你想要的指令。spa

接下來和小魚一塊兒嘗試一下吧。code

查看當前環境下全部的包的名字和位置orm

rospack list
複製代碼
(base) ➜  armsim rospack listactionlib /opt/ros/melodic/share/actionlibactionlib_msgs /opt/ros/melodic/share/actionlib_msgsactionlib_tutorials /opt/ros/melodic/share/actionlib_tutorialsamcl /opt/ros/melodic/share/amcl...........
複製代碼

能夠看到一大堆的包,那我想過濾一下ur5關鍵詞,怎麼搞呢?教程

rospack list | grep ur5
複製代碼

小魚嘗試運行了一下,發現什麼都沒有輸出,那說明個人工做空間下的確沒有這個包。圖片

圖片

這個時候小魚就發現本身忘記source了,就能夠先source一下環境。it

source devel/setup.bash
複製代碼

而後再試一次

(base)➜armsim rospack list | grep ur5ur5_moveit_config /home/monster/code/learn/armsim/src/universal_robot/ur5_moveit_config
複製代碼
rospack find package-name
複製代碼

好比

(base)➜armsim rospack find turtlesim /opt/ros/melodic/share/turtlesim
複製代碼

還有更多使用方法,好比查找一個包的全部依賴。

(base) ➜  armsim rospack depends-on turtlesimturtle_tfturtle_tf2turtle_actionlib
複製代碼

當咱們手動下載編譯一個包的時候,能夠先使用rospack檢查一下包的相關依賴再動手安裝。

更多使用姿式你們可使用rospack -h來查看。

圖片

我是小魚,一名在職機器人算法工程師

目前在作公衆號,輸出

機器人算法註解、學習教程、工做經驗等

歡迎你們關注

相關文章
相關標籤/搜索