ROS的IDE们
从研一接触ROS到现在, 一直在被两件是折腾着, 1.怎么编译, 2. 怎么degug.一开始用的roboware, 能够自动添加CMakeLists, 一些小动能如自动启动launch文件等. 后来开源了但是也不更新了, 自身有些bug也没能修复.
关于IDE ros.wiki[1] 上由列举如: Eclipse,qtcreat, kDevelop, vscode, roboware,Clion等。在answers.ros [2]上面关于IDE的讨论,最后题主选择的是Eclipse。我就我尝试的使用过的IDE进行简单的总结,目前我使用的是qtcreator,与Clion。
kDevelop ,vscode
kDevelop 与vscode 都是开源免费软件,其中vscode平时看代码用的很多,而且跨平台,另提供了关于ROS 的插件,但遗憾的是不能调试,github上有人给出了关于调试的方法,大致思路如下,具体没有尝试:
- 启动ros,运行节点;
- 查看当前进程号,然后在launch文件中修改原本调试进程为当前运行进程.
qtcreator
qt提供了ros的插件,而且有详细的wiki[3]。 其本身又是跨平台的软件。在ros中做UI的时候用qt,在创客智造中有详细的关于如何在linux下安装qt 关于ros插件的教程,关于编译配置方法也讲述的比较详细,但是在debug的过程中还是出了问题.然后换了一个方法,这个的思路和vscode 中调试的方法本质应该是一样的.
qt 编译环境配置好之后,可以选择已经启动的节点进行调试,以及未启动的节点进行调试。我采用的通常是先启动节点。具体步骤如下:
- 启动roscore,运行需要调试节点;
- qt 工具栏选择 debug ->starting debug -> attach to running application
- 在合适的地方设置断点,即可进行调试.
clion
clion 是一款基于Cmake的C++ IDE ,教程[4]写的挺好的,收费,平时学习的过程中很都是用的它,就在网上搜了搜,果然支持ros的编译调试,而且出了官方的手册. 以下是主要的配置步骤:
1. 配置桌面入口
1 | cd ~/.local/share/applications |
在文件中添加Exec=bash -i -c **"PATH_TO_CLION/bin/clion.sh"** %f之后的文件应该长这个样子.
1 | [Desktop Entry] |
2. 在Clion中打开ROS工作区
直接选择CMakeLists.txt 然后以工程方式打开就行了.打开之后长这样子:注意最后会有提示完成的文字,当然出错了也会提醒你的.

3. 将Clion生成的编译文件放到catkin工程中
Clion会生成自己的编译文件的文件夹, 因此要将两个结合一下.
- In Generation path, set workspace_folder/build.
- In CMake options, add
-DCATKIN_DEVEL_PREFIX:PATH=workspace_folder/devel.

4. 使launch采用xml格式的文件打开
- Go to File | Settings (Ctrl+Alt+S) | Editor | File Types and select XML from the list of Recognized File Types.
- Add .launch extension to the list of *Registered Patterns**.
5. debug
- 启动master, 然后运行需要调试的节点
- Run | Attach to Proces,,然后选择你需要调试的节点.