欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 美食 > VSCode CMake调试CPP程序

VSCode CMake调试CPP程序

2025/4/15 8:44:20 来源:https://blog.csdn.net/qq_44776065/article/details/147183156  浏览:    关键词:VSCode CMake调试CPP程序

文章目录

  • 1 安装C++与CMake插件
  • 2 配置CMakeLists.txt
  • 3 使用CMake编译调试
    • 3.1 编译
    • 3.2 调试
  • 4 自定义构建调试
  • 参考

1 安装C++与CMake插件

C++插件

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

CMake插件

在这里插入图片描述

2 配置CMakeLists.txt

编写测试程序

#include<iostream>int main(int argc, char const *argv[]) {int a = 1, b = 2;int c = a + b;int d = a - b;std::cout << "Done!" << std::endl;return 0;
}

编写构建脚本CMakeLists.txt

cmake_minimum_required(VERSION 3.12)
project(DebugProject)add_executable(main.out main.cpp)

3 使用CMake编译调试

3.1 编译

Command + Shift + P 输入CMake 输入CMake: Configure 指定要构建的文件

在这里插入图片描述

进入CMake Tools插件,可以看到CMake中的各种命令

PROJECT OUTLINE中点击进行debug构建

在这里插入图片描述

3.2 调试

在编辑器中添加断点

在这里插入图片描述

进入CMake Tools插件,点击Debug按钮,开始调试

在这里插入图片描述

可以看到已经运行到断点处,因此可以继续进行调试

在这里插入图片描述

4 自定义构建调试

进入CMakeList.txt 所在的目录,编译并构建

cd CMakeLists.txt所在目录
cmake -B build -DCMAKE_BUILD_TYPE=Debug
cmake --build build

进入Debug并配置launch.json

在这里插入图片描述

选择调试器

在这里插入图片描述

生成调试配置

在这里插入图片描述

选择lldb(launch)

{// 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": "CMakeDebug", //自定义调试名称"type": "cppdbg","request": "launch","program": "${workspaceFolder}/main.out", // 指定生成main.out的路径"args": [],"stopAtEntry": false,"cwd": "${fileDirname}",  // 表示使用当前文件所在的目录作为工作目录。"environment": [],"externalConsole": false,"MIMode": "lldb" // 调试器 使用gdb或者lldb}]
}

可以自定义多个调试器,分别进行调试即可
【注意】C++程序修改后需要重新进行编译cmake --build build

在这里插入图片描述

{"version": "0.2.0","configurations": [{"name": "CMakeTestDebug2","type": "cppdbg","request": "launch","program": "${workspaceFolder}/CPPNote/CH00_CPP/01_Debug/02/build/main.out","args": [],"stopAtEntry": false,"cwd": "${fileDirname}","environment": [],"externalConsole": false,"MIMode": "lldb"},{"name": "CMakeTestDebug1","type": "cppdbg","request": "launch","program": "${workspaceFolder}/CPPNote/CH00_CPP/01_Debug/01/build/main.out","args": [],"stopAtEntry": false,"cwd": "${fileDirname}","environment": [],"externalConsole": false,"MIMode": "lldb"}]
}

参考

VSCode中配置CMake,通过CMake断点调试程序 https://blog.csdn.net/ly2467513805/article/details/106864342

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词