- 说明:由于VScode的扩展之多,ROS也有相关的拓展插件,通过该拓展可以实现使用VScode来运行和调试ROS中某个节点。
参考我的另一篇文章ROS的安装和基础用法
第二步:安装插件 第三步:修改VScode配置文件c_cpp_propertiesjson文件:主要是添加路径。功能包相关的路径不用添加,这个只要正常创建功能包,对应的路径就会添加进去。
{
"configurations": [
{
"browse": {
"databaseFilename": "",
"limitSymbolsToIncludedHeaders": true
},
"includePath": [
"/home/jozenlee/catkin_ws/devel/include/**",
"/opt/ros/melodic/include/**",
"/opt/ros/melodic/include/*",
"/usr/include/**"
],
"name": "ROS",
}
],
"version": 4
}
注意!!! 使用VScode打开ROS文件时需要用打开文件夹的方式打开工作空间对应的文件夹,再在文件树中找到想要修改的文件。因为查找头文件需要正确的基地址。
此时,使用VScode写ROS的相关代码已经会有函数补全功能了,然后开始调试阶段。
假定我们现在有一个功能包名为Jozen_pkg,并且在其中创建了一个名为Jozen_Talker的发布者。
-
点击VScode右边的运行和调试,再点击绿色三角形(开始调试)
这一步之后,会自动生成launch.json文件,在弹出的对话框中选择C++(GDB/LLDB)
-
修改launch.json文件
"program": "${workspaceFolder}/devel/lib/Jozen_pkg/Jozen_Talker",
这里的Jozen_pkg和Jozen_Talker在使用时更换成自己的包和节点名即可。
- 修改CmakeList文件
在功能包对应的CMakeLists的最后,添加以下语句。
SET(CMAKE_BUILD_TYPE Debug)
- 进行编译调试
在VScode终端中输入catkin_make,编译通过之后正常启动其他文件,然后点击绿色三角形,即可在VScode中运行节点对应的源文件,并且可以打断点调试。



