Ros集成开发环境配置
参考资料:
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版本。