參考資料:
http://blog.csdn.net/yangziluomu/article/details/50848357 ROS使用IDE Eclipse
http://blog.csdn.net/anzhu_111/article/details/5946634 如何在Ubuntu中使用Eclipse + CDT開發C/C++程序
http://www.cnblogs.com/lidabo/p/3808464.html linux下c++開發環境安裝(eclipse+cdt)
http://wiki.ros.org/IDEs#Reusing_your_shell.27s_environment ros-官網IDEs開發
http://archive.eclipse.org/eclipse/downloads/drops4/R-4.2.2-201302041200/linPlatform.php#EclipseSDK EclipseSDK下載
不多介紹,直接進入正題。
-
安裝Eclipse 環境
參考資料: http://blog.csdn.net/yangziluomu/article/details/50820050
請下載對應版本的Eclipse,根據您的系統來定,這里Eclipse下載的是SDK不是什么開發版本。地址上面有寫,這里不介紹。
下面顯示的是 3.8。不過,個人下載的是下面這個,64位版本。
JDK 等環境變量可以寫入 ~/.bashrc,這樣就是永久生效了。
從上面可以看出,我是把環境變量寫入 root 用戶里面的 .bashrc當中的。但是在子用戶當中依然有效。
但是有時候,子用戶設置的東西,在root用戶里面未必有效,這點可以記錄一下。
對於Eclipse的配置,嚴格按照博客當中的配置就行。
- 安裝CDT
CDT是什么東西?CDT是讓你可以在Eclipse當中可以開發C/C++項目工具箱 (C/C++ Development Tooling)。
此項安裝最簡單了,最好是在root用戶下,進行安裝, sudo apt-get install CDT 。這樣安裝啥都搞定了,會自己默認尋找Eclipse目錄。
不用自己搞,當然關於Eclipse也可以安裝 apt-get方式進行安裝,只不過安裝的版本較低。不過也是可以的。
-
編寫ROS包,進行測試
1)建立工作目錄 mkdir catkin_ws
2)在工作目錄下建立 src 文件夾。 mkdir src
3)切到src 目錄下,我們開始建立包。 catkin_create_pkg hello rospy roscpp std_msgs 后面的東東都是依賴項。
4)切到hello 包目錄下,此時會多幾個文件,切到src目錄下,建立自己的程序。也就是節點程序,開始寫你的代碼就行。
比如:
-
// a simple "hello" ROS program.
-
// by taiping.z
-
// 2016/03/08
-
#include "ros/ros.h"
-
#include "std_msgs/String.h"
-
using namespace ros;
-
-
int main(int argc, char **argv)
-
{
-
ros::Time::init(); //定時器初始化
-
-
ros::init(argc, argv, "hello"); //節點初始化
-
-
ros::Rate loop_rate(10); //定時10ms
-
-
while (ros::ok()) //節點是否正常工作
-
{
-
-
ROS_INFO("%s", "hello world !"); //打印節點信息
-
-
ros::spinOnce(); //節點只循環一次
-
-
loop_rate.sleep(); //不夠10ms的補充到10ms為止。
-
-
}
-
return 0;
-
}
5)在切回來到hello 包底下,在CMakeLists.txt文件中添加依賴項。
比如 add_executeable(hello src/hello.cpp) 其實會生成hello.exe的名字。
Target_link_libraries(hello ${catkin_LIBRARIES}) 添加節點編譯需要的庫文件。
6)上面都弄完之后,我們回到我們自己的工作空間,開始編譯整個項目。
命令如下:
Catkin_make –force-cmake –G"Eclipse CDT4 – unix makefiles" –dcmake_build_type=debug –dcmake_eclipse_make_arguments=-j8
增加 –-force-cmake之后,表示強制編譯,編譯工具用的CDT4,且會生成兩個文件 .project ,此project 也就是在Eclipse里面要用到的。
文件在 cakin_ws /devel / 文件下面,還有一個文件名忘了。此兩個文件都是隱藏的,一般看不到。
上面是編譯成功后的樣子,肯定會有 Linking CXX出現,不然就是失敗,沒有生成成功。
-
-
打開eclIpse,進行包的導入。
這個地方和windows下面包的導入是一樣的。下邊最右側的框圖中,顯示的是灰色,表示當前工作區當中有一個同名的工程在里面。
-
配置eclipse里面導入的工程
在導入的項目名稱那,右擊—debug as – debug configurations,配置一下 C/C++ Application,也就是exe的位置在哪。
下面的庫文件都是自動配置好的,假如你的Eclipse里面沒有的話,表示沒有配置成功。
-
當上面的工作都做好以后,我們就可以進行debug了。
選擇下面的debug項進行調試,但是需要先打開roscore
運行后的界面是這樣的:
到此為止,整個配置環境介紹完畢。
備注:
下面講講我在安裝ros當中遇到的坑。
-
在安裝ros之前,不用亂配置服務器。
上面的服務器的配置,會出現問題。導致后面ros無法安裝。
-
個人建議安裝ros官網里面介紹到的服務器地址去安裝,不然會出現莫名其妙的錯誤。
比如說 缺少依賴,這是因為不同地方的服務器,在下載ros的過程中,可能會缺少某些庫,導致於缺少依賴項。
此時,沒有其他方法,其實你來回的切換不同的鏡像ros文件也是白搭,除非你安裝不同的ros.比如indigo版本的。
版本之間其實差異性不太大,可能就是支持的力度以及硬件的驅動有所區別。
比如ros當中,之前的選擇是 Download from Main server china .然后,other software里面選擇 ppa:xxxx,后面的忘記了。大家參考ros安裝教程即可。
-
3、服務器弄好之后,你就慢慢等待就行了。我們推薦安裝 desktop—full版本,當然了,你安裝desktop版本,也可以隨時升級到 desktop-full版本。