VSCode CMake Debug 配置指南

准备工作

确保已安装以下工具:

  • VSCode(最新版本)
  • CMake(建议版本 ≥ 3.10)
  • C++ 编译器(如 GCC、Clang 或 MSVC)
  • VSCode 插件
    • C/C++(Microsoft 官方扩展)
    • CMake Tools(用于 CMake 集成)
    • CodeLLDB(可选,用于 LLDB 调试)

创建 CMake 项目

在项目根目录创建 CMakeLists.txt,示例内容如下:

cmake_minimum_required(VERSION 3.10)  
project(MyProject)  

set(CMAKE_CXX_STANDARD 17)  
add_executable(${PROJECT_NAME} src/main.cpp)  

配置 VSCode 调试环境

  1. 生成编译配置

    • 使用 CMake Tools 插件生成构建目录(通常为 build/)。
    • 在 VSCode 命令面板(Ctrl+Shift+P)运行 CMake: ConfigureCMake: Build
  2. 配置调试器(以 GDB/LLDB 为例)

    • .vscode/launch.json 中添加调试配置:
{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "CMake Debug",
      "type": "cppdbg",
      "request": "launch",
      "program": "${workspaceFolder}/build/MyProject", // 可执行文件路径
      "args": [],
      "stopAtEntry": false,
      "cwd": "${workspaceFolder}",
      "environment": [],
      "externalConsole": false,
      "MIMode": "gdb", // 或 "lldb"
      "setupCommands": [
        {
          "description": "启用反汇编视图",
          "text": "-enable-pretty-printing",
          "ignoreFailures": true
        }
      ]
    }
  ]
}

断点调试

  1. 在代码中设置断点(点击行号左侧)。
  2. F5 启动调试,调试器将在断点处暂停。

高级调试技巧

  • 变量监视:在调试面板的 WATCH 窗口添加变量名或表达式。
  • 条件断点:右键断点设置条件(如 i == 5)。
  • 多线程调试:在 launch.json 中配置 "externalConsole": true 以支持线程切换。

常见问题解决

  • 调试器无法启动:检查 program 路径是否正确,确保可执行文件已生成。
  • CMake 配置失败:检查 CMakeLists.txt 语法或依赖项是否缺失。
  • 断点未命中:确认编译时启用了调试符号(-g 标志)。

以上步骤适用于大多数 Linux/macOS 环境,Windows 用户需额外配置路径和调试器(如 MSVC)。

Logo

这里是一个专注于游戏开发的社区,我们致力于为广大游戏爱好者提供一个良好的学习和交流平台。我们的专区包含了各大流行引擎的技术博文,涵盖了从入门到进阶的各个阶段,无论你是初学者还是资深开发者,都能在这里找到适合自己的内容。除此之外,我们还会不定期举办游戏开发相关的活动,让大家更好地交流互动。加入我们,一起探索游戏开发的奥秘吧!

更多推荐