温馨提示×

Ubuntu C++调试怎么弄

小樊
46
2026-10-14 04:23:02
栏目: 编程语言

在 Ubuntu 上调试 C++ 程序,常见做法主要有 GDB(命令行)、VS Code(图形化)、以及 CMake + GDB。下面按从基础到推荐的用法给你讲清楚。


一、最基础:用 GDB 调试(命令行)

1. 安装编译器和调试器

sudo apt update
sudo apt install g++ gdb

2. 编译时加 -g

⚠️ 不加 -g 是无法调试的

g++ -g main.cpp -o main

3. 启动 GDB

gdb ./main

4. 常用 GDB 命令

命令 作用
run / r 运行程序
break main / b 10 设置断点
next / n 单步(不进函数)
step / s 单步(进函数)
print x / p x 打印变量
backtrace / bt 查看调用栈
continue / c 继续执行
quit / q 退出

示例:

(gdb) b main
(gdb) r
(gdb) n
(gdb) p a

二、推荐方式:VS Code + GDB(最舒服)

1. 安装

sudo apt install gdb
code .   # 打开 VS Code

2. 安装插件

  • C/C++
  • CMake Tools(如果用 CMake)

3. 编译(带调试信息)

g++ -g main.cpp -o main

4. 配置 launch.json

点击 Run → Add Configuration → C++ (GDB/LLDB)

示例:

{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "C++ Debug",
      "type": "cppdbg",
      "request": "launch",
      "program": "${workspaceFolder}/main",
      "args": [],
      "stopAtEntry": false,
      "cwd": "${workspaceFolder}",
      "externalConsole": false,
      "MIMode": "gdb"
    }
  ]
}

然后按 F5 就能断点调试了。


三、用 CMake 调试(工程化推荐)

1. CMakeLists.txt

cmake_minimum_required(VERSION 3.10)
project(demo)

set(CMAKE_BUILD_TYPE Debug)
add_executable(main main.cpp)

2. 编译

mkdir build && cd build
cmake ..
make

3. VS Code 调试

launch.json 里:

"program": "${workspaceFolder}/build/main"

四、常见调试技巧

✅ 段错误(Segmentation fault)

gdb ./main
run
bt   # 看哪里崩了

✅ 打印调用栈

bt full

✅ 条件断点

break 20 if i == 5

五、推荐组合(新手到进阶)

  • 初学者:GDB 基本命令
  • 日常开发:VS Code + GDB
  • 大型项目:CMake + VS Code

如果你愿意,可以告诉我:

  • 你是 纯命令行 还是 用 VS Code
  • 是否用 CMake
  • 遇到什么具体错误(比如段错误、卡死)

我可以直接给你一步步配置。

0 踩