目录
1. 前言
2. 环境说明
3. 插件安装
3.1 ROS插件
3.2 C/C++插件
4. 配置脚本
4.1 c_cpp_properties.json
4.2 launch.json
4.3 tasks.json
5. 总结
1. 前言
这篇文章主要记录如何对VSCode进行配置使得它支持ROS的开发。VSCode是一个轻量级的编辑器,但是由于它具备完善的插件机制,经过一些配置后能拥有类似IDE的功能。我个人感觉VSCode给人的视觉感受和编码体验真的非常好。但是我找了很久没有找到VSCode相关的C++重构插件,因此如果你需要这个功能还是使用Eclipse这种软件。
2. 环境说明
作者使用的Ubuntu版本为16.04和18.04,ROS版本为kinetic和melodic。
3. 插件安装
3.1 ROS插件
打开VSCode,在左侧栏点击Extensions,并在搜索框中输入ros,安装ROS插件,如下图所示。
3.2 C/C++插件
在搜索框中输入c/c++,安装C/C++插件,如下图所示。
4. 配置脚本
比较复杂的是VSCode的诸多配置脚本,在工作空间目录下新建一个名为.vscode的文件夹,在该文件夹下新建以下三个文件:1. c_cpp_properties.json 2. launch.json 3. tasks.json。简单说一下这三个文件的作用:
- c_cpp_properties.json: C++配置文件
- launch.json: 启动代码调试相关的配置文件
- tasks.json: 自定义任务列表
4.1 c_cpp_properties.json
在这个文件中键入如下内容:
{
"configurations": [
{
"name": "Linux",
"includePath": [
"${workspaceFolder}/**"
],
"defines": [],
"compilerPath": "/usr/bin/gcc",
"cStandard": "c11",
"cppStandard": "c++17",
"intelliSenseMode": "clang-x64",
"compileCommands": "${workspaceFolder}/build/compile_commands.json",
"compilerArgs": [],
"browse": {
"path": [
"${workspaceFolder}/**"
],
"limitSymbolsToIncludedHeaders": true
}
}
],
"version": 4
}
这个配置脚本主要包含了编译器配置,头文件路径等相关信息。
4.2 launch.json
在这个文件中键入如下内容:
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "(gdb) Launch",
"type": "cppdbg",
"request": "launch",
"program": "${workspaceFolder}/*",
"args": [],
"stopAtEntry": true,
"cwd": "${workspaceFolder}",
"environment": [],
"MIMode": "gdb",
"setupCommands": [
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": true
}
]
},
]
}
这里的program指向的是你希望调试的可执行文件。
4.3 tasks.json
在这个文件中键入如下内容:
{
"version": "2.0.0",
"tasks": [
{
"label": "source",
"type": "shell",
"command": "source /opt/ros/melodic/setup.bash;"
},
{
"label": "catkin_make",
"type": "shell",
"command": "echo $PATH; source /opt/ros/melodic/setup.bash; echo $PATH;whereis catkin_make; catkin_make",
"group": {
"kind": "build",
"isDefault": true
},
"dependsOrder": "sequence",
"dependsOn": [
"source"
],
"problemMatcher": []
}
]
}
5. 总结
以上文件编辑完成之后利用VSCode打开工作空间所在目录即可进行项目编辑,编译以及调试工作了。具体的调试方法可以参考https://blog.csdn.net/Kalenee/article/details/103828448。