< >
Home » ROS与C++入门教程 » ROS与C++入门教程-搭建开发环境(Eclipse)

ROS与C++入门教程-搭建开发环境(Eclipse)

ROS与C++入门教程-搭建开发环境(Eclipse)

说明:

  • 介绍如何安装Eclipse
  • 介绍如何制作支持Eclipse的catkin包
  • 介绍如何导入catkin包到Eclipse
  • 介绍如何编译和测试catkin包

Eclipse安装

  • 新版Eclipse已经包含jre,可以忽略安装安装JRE或者JDK
  • 安装JRE或者JDK
apt-get install openjdk-7-jre
  • 设置环境变量, vim ~/.bashrc , 添加如下内容:
export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_55       
export JRE_HOME=${JAVA_HOME}/jre      
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib      
export PATH=${JAVA_HOME}/bin:$PATH

请输入图片描述

  • 下载Eclipse,推荐64位的系统, http://www.eclipse.org/downloads/?osType=linux。
  • 安装Eclipse,移动安装包到/opt目录,并解压包
sudo mv eclipse-SDK-4.2.2-linux-gtk.tar.gz /opt/ 
cd /opt  
sudo tar -xvf eclipse-SDK-4.2.2-linux-gtk.tar.gz 
  • 创建新的eclipse.desktop文件,在/usr/share/applications/中
touch eclipse.desktop
vim eclipse.desktop
  • 加入以下行
[Desktop Entry]  
Name=Eclipse  
Type=Application  
Exec=/opt/eclipse/eclipse  
Terminal=false  
Icon=/opt/eclipse/icon.xpm  
Comment=Integrated Development Environment  
NoDisplay=false  
Categories=Development;IDE  
Name[en]=eclipse.desktop  
  • 在/usr/share/applications目录中找到eclipse.desktop,并打开eclipse,托至启动栏

请输入图片描述

  • 二进制安装和卸载:也可以apt-get方式进行安装和卸载,只不过安装的版本较低。
#安装
sudo apt-get install eclipse
#卸载
sudo apt-get remove --purge eclipse

安装CDT

  • CDT是让你可以在Eclipse当中可以开发C/C++项目工具箱 (C/C++ Development Tooling)
  • 安装
sudo apt-get install CDT

编写ROS包

  • 建立测试目录和文件
mkdir catkin_ws     #建立工作目录 
mkdir src           #在工作目录下建立src文件夹。
#切到src目录下,我们开始建立包,后面的东东都是依赖项
catkin_create_pkg hello rospy roscpp std_msgs 。
#切到hello 包目录下,此时会多几个文件,切到src目录下
#新建自己的程序。也就是节点程序,开始写你的代码就行。
vim hello.cpp
  • 内容如下:
// 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;
}
  • 添加依赖项,在切回来到hello 包底下,在CMakeLists.txt文件中添加依赖项,。
add_executeable(hello src/hello.cpp) #其实会生成hello.exe的名字
Target_link_libraries(hello ${catkin_LIBRARIES}) #添加节点编译需要的库文件。
  • 开始编译整个项目
Catkin_make –force-cmake –G"Eclipse CDT4 – unix makefiles" –dcmake_build_type=debug –dcmake_eclipse_make_arguments=-j8
  • 增加 –-force-cmake之后,表示强制编译,编译工具用的CDT4,且会生成两个文件 .project ,此project 也就是在Eclipse里面要用到的。

  • 编译图示:

请输入图片描述

请输入图片描述

导入ROS包到Eclipse

  • 通过已存在的包导入

请输入图片描述
请输入图片描述
请输入图片描述

配置eclipse里面导入的工程

  • 在导入的项目名称,右击—debug as – debug configurations,配置一下 C/C++ Application
    请输入图片描述

  • 下面的库文件都是自动配置好的,假如你的Eclipse里面没有的话,表示没有配置成功。
    请输入图片描述

  • 当上面的工作都做好以后,我们就可以进行debug了。

  • 选择下面的debug项进行调试,但是需要先打开roscore
    请输入图片描述

  • 运行后的界面
    请输入图片描述

参考:

  • http://www.cnblogs.com/zhuxuekui/p/5672199.html
  • http://blog.csdn.net/yangziluomu/article/details/50848357
  • http://blog.csdn.net/anzhu_111/article/details/5946634
  • http://www.cnblogs.com/lidabo/p/3808464.html
  • http://wiki.ros.org/IDEs#Reusing_your_shell.27s_environment
  • http://archive.eclipse.org/eclipse/downloads/drops4/R-4.2.2-201302041200/linPlatform.php#EclipseSDK
  • http://blog.csdn.net/benshu_001/article/details/8309870
  • http://blog.csdn.net/sunbibei/article/details/45319457
  • http://www.cnblogs.com/dflower/archive/2010/05/13/1734522.html
  • http://ros-users.122217.n3.nabble.com/Catkin-Eclipse-Integration-td4020223.html
  • http://www.cnblogs.com/freedomshe/archive/2013/05/16/configure_eclipse_in_catkin.html

纠错,疑问,交流: 请进入讨论区点击加入Q群

获取最新文章: 扫一扫右上角的二维码加入“创客智造”公众号


标签: ROS与C++入门教程