温馨提示×

centos c++调试工具怎么配

小樊
43
2026-10-14 19:24:24
栏目: 编程语言

在 CentOS 上做 C++ 调试,常用的工具组合是 gcc/g++ + gdb(+ optionally valgrind / strace / clang-tools)。下面按“从零开始”的方式给你一套实用配置。


一、安装基础编译和调试工具

1. 安装开发工具组(推荐)

sudo yum groupinstall "Development Tools"

这会装好 gcc、g++、make、gdb 等。

2. 单独安装关键工具(如果没装)

sudo yum install gcc gcc-c++ gdb make cmake

3. 可选但非常有用的工具

sudo yum install valgrind strace ltrace

二、编译时开启调试信息(关键)

一定要加 -g,否则 gdb 看不到源码。

示例(命令行)

g++ -g -O0 main.cpp -o main

说明:

  • -g:生成调试信息
  • -O0:关闭优化(否则变量可能被优化掉)

三、使用 GDB 调试

1. 启动调试

gdb ./main

2. 常用 GDB 命令

run              # 运行程序
break main       # 在 main 设断点
break file.cpp:20
next             # 单步(不进函数)
step             # 单步(进函数)
print x          # 打印变量
backtrace        # 查看调用栈
continue         # 继续执行
quit             # 退出

3. 带参数运行

gdb --args ./main arg1 arg2

四、CMake 项目如何配调试

CMakeLists.txt 示例

cmake_minimum_required(VERSION 3.10)
project(demo)

set(CMAKE_BUILD_TYPE Debug)
set(CMAKE_CXX_FLAGS_DEBUG "-g -O0")

add_executable(demo main.cpp)

编译

mkdir build && cd build
cmake ..
make
gdb ./demo

五、VS Code + CentOS 远程调试(很推荐)

1. 本地 Windows / Mac

  • 安装 Remote - SSH
  • 连接到 CentOS

2. CentOS 上装

sudo yum install gdb

3. VS Code 配置(launch.json)

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

六、常见问题排查

1. gdb 没符号

  • 确认编译有 -g
  • 确认没被 strip
file main

2. 变量显示 <optimized out>

  • 使用 -O0

3. CentOS 7 gdb 太老

sudo yum install devtoolset-9
scl enable devtoolset-9 bash

七、进阶工具(可选)

工具 用途
valgrind 内存泄漏
strace 系统调用
perf 性能分析
clang-tidy 静态检查

如果你告诉我:

  • CentOS 版本(7 / 8 / Stream)
  • 用不用 CMake / Makefile
  • 是否用 VS Code / CLion

我可以给你更精确的配置方案。

0 踩