VScode+cmake调试c++记录

您所在的位置:网站首页 makefile单步调试 VScode+cmake调试c++记录

VScode+cmake调试c++记录

2023-05-24 17:16| 来源: 网络整理| 查看: 265

所需文件:代码文件,以及CMakeLists.txt,确保能够在终端中使用make命令可以正常编译运行

所需环境:VScode,确保已安装C/C++、CMake、CMakeTools等拓展

正式开始配置: 1、在VScode中Ctrl+shift+P打开搜索,输入cmake搜索并点击 select a kit,在下拉选项中选择GCC,有多个GCC版本时按照自己情况选 在这里插入图片描述 2、点击界面左侧的调试与运行,再点击设置那个图标,打开launch.json配置文件 在这里插入图片描述

3、配置launch.json文件 修改自动生成的launch文件,可以参考我的进行改,有注释的都是需要注意或者改动的地方 各选项解释如下

{ "version": "0.2.0", "configurations": [ { "name": "(gdb) Launch", "type": "cppdbg", "request": "launch", "program": "${workspaceFolder}/bin/test.out", # 你的项目生成的可执行文件,windows下应该是exe文件 "args": [], # 参数,会输入到main函数的参数,如果不需要的话为空即可 "stopAtEntry": false, "cwd": "${workspaceFolder}/bin", # 调试时候的工作目录,根据自身情况设置 "environment": [], "externalConsole": false, "MIMode": "gdb", "setupCommands": [ { "description": "Enable pretty-printing for gdb", "text": "-enable-pretty-printing", "ignoreFailures": true, "preLaunchTask": "test" # 需要调试的话要加上这一行,否则可能不会在断点停 } ], // "preLaunchTask": "CMake Build" # 这行有的话要注释掉,不然会报错 } ] }

4、问题解决 问题1:设置断点后,开始调试断点会变为空心断点,程序在断点不停止 解决:

看是否在launch文件中添加了"preLaunchTask": "test"调试前需要进行手动cmake 和 make更新可执行文件,否则就算代码加了断点或者改动,调试时运行的还是之前的执行文件


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3