Ubuntu 16.04 配置ROS Kinetic的Eclipse开发环境

本文参考:http://blog.csdn.net/wxflamy/article/details/79155519

下载并安装Eclipse

Eclipse需要Java Runtime Environment (JRE)环境,使用以下命令安装:

sudo apt-get install default-jre
  • 1

新版本可能需要java1.8,我第二次打开的时候就要求java版本1.8。使用源安装java1.8的方法如下

使用下面的命令安装,只需一些时间,它就会下载许多的文件,所以你要确保你的网络环境良好:

$ sudo add-apt-repository ppa:webupd8team/java
$ sudo apt-get update
$ sudo apt-get install oracle-java8-installer
$ sudo apt-get install oracle-java8-set-default

设置环境变量

编辑.bashrc文件

JAVA_HOME=/usr/lib/jvm/java-8-oracle
JRE_HOME=$JAVA_HOME/jre
JAVA_BIN=$JAVA_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME PATH CLASSPAT

为了让更改立即生效,请在终端执行如下命令:

source ~/.bashrc
  • 1

运行

$ java -version
  • 1

出现下图所示,证明安装成功。

这里写图片描述

下载最新版的Eclipse IDE for C/C++ Developers
https://www.eclipse.org/downloads/eclipse-packages/
这里写图片描述
下载完成后,使用以下命令解压:

$ tar -xvzf eclipse-cpp-oxygen-2-linux-gtk-x86_64.tar.gz
  • 1

可以得到一个名为eclipse的文件夹。使用以下命令,将其拷贝到/opt文件夹里:

$ sudo cp -r eclipse /opt/
  • 1

eclipse创建桌面文件,使得在搜索条中能够找到。

$ sudo nano /usr/share/applications/eclipse.desktop

复制以下代码到此文件中,包括执行文件的位置和图标

[Desktop Entry]
Version=4.7.2
Name=Eclipse Mars Java EE @wxflamy
GenericName=IDE
Comment=Eclipse IDE for Java C++ Developers
Exec=/opt/eclipse/eclipse
Terminal=false
Icon=/opt/eclipse/icon.xpm
Type=Application
Categories=Utility;Application;

文件后就可以在搜索条中找到Eclipse了

在Eclipse IDE中设置ROS的开发环境

这部分是编译ROS C++节点的必要的设置。

Eclipse IDE中的全局设置

也就是说不用每个工程都设置,只需设置一次。
1. 从搜索条中启动Eclipse IDE
2. Window | Preferences,在Preferences窗口中,选择C/C++ | Build | Settings,选中Discovery标签。选中CDT GCC Build Output Parser [Shared],选择Compiler command pattern输入(.*gcc)|(.[gc]++)|(.clang)。选中Container to keep discovered entries里的Project选项。点击Apply按钮。
这里写图片描述
3. 下一步中,单击Discovery标签中的CDT GCC Built-in Compiler Settings [ Shared ],在Command to get compiler specs下面输入${COMMAND} -E -P -v -dD -std=c++11 “${INPUTS}”
这里写图片描述

Eclipse IDE中的ROS编译脚本

编译ROS节点需要ROS环境。需要在当前终端中source /opt/ros/kinetic/setup.bash进入ROS环境,这可以在.bashrc中加入来解决。但是在用Eclipse时就需要写一个脚本。
使用以下命令,在/usr/local/bin中新建一个名为eclipsemake的文件,

sudo nano /usr/local/bin/eclipsemake

写入如下内容:

#!/bin/bash
source /opt/ros/kinetic/setup.bash
make "$@" VERBOSE=1 -j8

(nano的退出是Ctr+X键)

在相同路径下再新建一个名为eclipsemake-tests的文件,

sudo nano /usr/local/bin/eclipsemake-tests

输入如下:

#!/bin/bash
source /opt/ros/kinetic/setup.bash
make "$@" VERBOSE=1 -j8 run_tests

使用以下命令更改这两个文件的权限

sudo chmod +x /usr/local/bin/eclipsemake*

将ROS Catkin包添加到Eclipse中

新建一个project,选择C/C++ | MakeFile Project with Existing Code

这里写图片描述

以前建立过一个名为pkg1_create_node的工程用于学习,现在将它导入进来
这里写图片描述

右键工程名,到Properties界面,选中C/C++ Build选项,在Builder Settings标签下修改Build commandBuild location。要注意是build的路径(要选择文件系统,改到build目录下)。
这里写图片描述
C/C++ Build | Environment中添加变量VERBOSE并将它的值设为1
这里写图片描述
C/C++ General选择 Path and Symbols,选中Symbols标签。在GNU C++中添加__GXX_EXPERIMENTAL_CXX0X__,不赋值。
这里写图片描述
C/C++ General选择Preprocessor Includes Paths, Macros etc.,在Providers标签下选中CDT GCC Build Output Parser [Shared] GCC Built-in Compiler Settings [Shared]。然后点击Apply。就可以编译ROS了。
这里写图片描述

下图显示编译成功。
这里写图片描述






猜你喜欢

转载自blog.csdn.net/jinking01/article/details/79441531