設定好所有依賴項後,就可以編譯這個程式包了。
1 編譯ros程式包
1.1 catkin_make
在catkin工作空間裡,直接執行catkin_make就可以編譯了。(官方教程說,相當於依次執行了cmake和make)
$ catkin_make [make_targets] [-dcmake_variables=...]
比如在之前新建的catkin_ws目錄裡執行,會編譯src資料夾下所有的catkin工程。
$ catkin_make install就可以生成很多東西了。(build devel install資料夾。)
如果**不在src目錄裡,則會有點麻煩,比如在mysrc目錄裡,則用下面**
$ catkin_make --source my_src$ catkin_make install --source my_src
2 ros節點
2.1 安裝小烏龜模擬器
因為我們一開始是完整安裝的。。所以應該不需要額外安裝了。下面**是直接安裝的**
sudo apt-get install ros-indigo-ros-tutorials
2.2 lunix chown命令
命令格式 : chown [選項]... [所有者][:[組]] 檔案...
必要引數
-c 顯示更改的部分的資訊
-f 忽略錯誤資訊
-h 修復符號鏈結
-r 處理指定目錄以及其子目錄下的所有檔案
-v 顯示詳細的處理資訊
-deference 作用於符號鏈結的指向,而不是鏈結檔案本身
可選引數
--reference=《目錄或檔案》 把指定的目錄/檔案作為參考,把操作的檔案/目錄設定成參考檔案/目錄相同擁有者和群組
--from=《當前使用者:當前群組》 只有當前使用者和群組跟指定的使用者和群組相同時才進行改變
--help 顯示幫助資訊
--version 顯示版本資訊
2.3 修改~/.ros
資料夾使用者歸屬**為
$ sudo chown -r ~/.ros
也就是把根目錄下的ros資料夾修改許可權為當前使用者(預設是只有root)
2.4 執行roscore**
$ roscore
這行**,就啟動了roscore,這個不能關,要開啟其他的終端再用。
2.5 用rosnode
ctrl+alt+t 開啟新終端,下面的**會顯示正在執行的節點。
rosnode list正常情況下,應該顯示/rosout節點。
試著輸入下面的命令
$ rosnode info /rosout這會輸出/rosout節點的一些資訊,
2.6 rosrun執行節點
rosrun可以執行一些已經存在的節點,包名+節點名。
$ rosrun [package_name] [node_name]我們知道我們之前學過了,我們可以做一些包,乙個包裡有src,裡面可能有若干個東西。應該就是乙個包裡有很多節點把。
$ rosrun turtlesim turtlesim_node執行了turtlesim包裡的turtlesim_node節點。
這個時候應該看到乙個小烏龜。
再去執行2.5的命令,這次會多個/turtlesim節點。
有個好玩的命令rosnode ping來看ping。
比如rosnode ping turtlesim
可以看到延遲。(疑問:從**去ping這個節點?用ubuntu來ping?還是節點去ping?)
ctrl+c, linux下萬能關閉終端程式的方法。
ROS學習筆記(三) 編譯ROS程式包
contents 編譯程式包 使用 catkin make 開始編譯你的程式包 一旦安裝了所需的系統依賴項,我們就可以開始編譯剛才建立的程式包了。注意 如果你是通過apt或者其它軟體包管理工具來安裝ros的,那麼系統已經預設安裝好所有依賴項。記得事先source你的環境配置 setup 檔案,在ub...
Ros學習 建立程式包
乙個程式包要想稱為catkin程式包必須符合以下要求 程式包必須包含乙個catkin 版本的cmakelists.txt檔案,而catkin metapackages中必須包含乙個對cmakelist.txt檔案的引用。每個目錄下只能有乙個程式包。source opt ros indigo setu...
ROS入門 1 7 編譯ROS程式包
一旦安裝了所需的系統依賴項,我們就可以開始編譯剛才建立的程式包了。注意 如果你是通過apt或者其它軟體包管理工具來安裝ros的,那麼系統已經預設安裝好所有依賴項。記得事先source你的環境配置 setup 檔案,在ubuntu中的操作指令如下 source opt ros groovy setup...