VSCode断点调试(ROS)

0、安装ros插件

在扩展商店中安装ROS插件(Microsoft)

1、修改CMakeList.txt

cpp 复制代码
# set(CMAKE_BUILD_TYPE "Release")				// 注释Release模式
set(CMAKE_BUILD_TYPE "Debug")					// 设置为Debug模式
# set(CMAKE_CXX_FLAGS_RELEASE "-O3 -Wall -g")	// 注释编译器优化

编译

2、配置json文件

点击图中1处,第一次会需要creat a launch .json file,弹出一些模板,点默认gdb即可,会在.vscode文件夹下生成launch.json文件:

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": []
}

"configurations": []中打ROS,可以自动补全ROS: Attach 或 ROS: Launch。其中,ROS: Attach 表示对一个可执行节点(node) debug,ROS: Launch 表示对一个launch 文件 debug。(在上一步模板那里也可以选ROS,但我的点不开)

补全后的:

json 复制代码
{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "ROS: Launch",
            "type": "ros",
            "request": "launch",
            "target": "/home/lu/2.classic_method/ego-planner/src/planner/plan_manage/launch/simple_run.launch"
        }
    ]
}

3.断点调试

剩下的就跟pycharm差不多了,2处进行单步调试,3-4处进行变量监视(右键添加到监视),感觉比起pycharm变量很多不全的...,5处可对变量进行修改和计算,不需要加;,6处是程序的调用关系,7处切换终端等

程序终止时,需要以此杀死所有运行节点(下图右侧):

参考:https://blog.csdn.net/weixin_45736684/article/details/135845156

相关推荐
别动我齐刘海12 小时前
ROS2 Jazzy + C++ 实战路线——基础学习2
c++·人工智能·vscode·python·学习·机器学习·机器人
东木月16 小时前
PyCharm 集成 Claude Code 插件:安装、配置与使用指南
python·pycharm·编辑器
boke112百科19 小时前
WordPress经典编辑器【插入至文章】按钮怎么调到右上角?
编辑器·wordpress·wordpress教程·经典编辑器
AI编码进化论19 小时前
云IDE介绍:环境模板化、Agent上云,云IDE该怎么选
开发语言·ide·人工智能·团队开发·ai编程
郝学胜-神的一滴21 小时前
C++20模板元编程 05:吃透变参模板,解锁编译期万能参数能力
服务器·开发语言·c++·windows·vscode
我要见SA姐11 天前
DeepSeek Harness 开源贡献手记:从 Issue 到 Merge 的完整旅程
ide·vscode·python·自动化·编辑器
ndsc_d2 天前
VS Code 接入 Pixso MCP 实战:配置、安装 AI Skill 与设计稿转代码
vscode·ai·设计·pixso·skill·mcp·设计稿转代码
千里马学框架2 天前
Android 17 成功编译运行差异部分更新
vscode·开发工具·车载开发·aosp源码·安卓17·aosp17·编译源码
2501_915918412 天前
使用 VS Code 写 Swift 做 iOS 开发,插件能实现哪些功能,还有哪些短板
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
威嵌神州2 天前
天脉 3 开发环境与 BSP 适配:IDE license、驱动开发、飞腾平台
ide·驱动开发·嵌入式硬件·fpga开发