在软件开发过程中,调试是必不可少的一环。对于使用 Debian 系统的开发者来说,GDB(GNU Debugger) 是一个强大且免费的命令行调试工具,特别适合调试 C/C++ 程序。本篇 Debian GDB调试器使用教程 将从零开始,带你一步步掌握 GDB 的基本用法,即使是编程小白也能轻松上手!
GDB 是 GNU 项目提供的开源调试器,支持多种语言(主要是 C、C++、Go、Rust 等),可以在程序运行时查看变量、设置断点、单步执行、查看调用栈等,是 Linux 下最常用的调试工具之一。
Debian 系统通常不预装 GDB,但安装非常简单。打开终端,执行以下命令:
sudo apt updatesudo apt install gdb
安装完成后,可通过以下命令验证是否安装成功:
gdb --version 为了演示 GDB 的使用,我们先写一个简单的 C 程序 hello.c:
#include <stdio.h>int main() { int a = 10; int b = 0; int result = a / b; // 这里会引发除零错误 printf("Result: %d\n", result); return 0;}
要让 GDB 能够调试源代码,必须在编译时加入 -g 参数以包含调试符号:
gcc -g -o hello hello.c 注意:不要使用 -O2 或 -O3 等优化选项,否则变量可能被优化掉,影响调试效果。
现在,启动 GDB 并加载我们的程序:
gdb ./hello 进入 GDB 后,你会看到类似如下的提示符:
(gdb)
list 或 l:显示源代码break [行号/函数名] 或 b:设置断点run 或 r:运行程序next 或 n:单步执行(不进入函数)step 或 s:单步执行(进入函数)print [变量名] 或 p:打印变量值continue 或 c:继续运行到下一个断点backtrace 或 bt:查看函数调用栈quit 或 q:退出 GDB1. 设置断点在第 6 行(即除法操作前):
(gdb) break 6
2. 运行程序:
(gdb) run
3. 程序会在第 6 行暂停。此时可以查看变量 a 和 b 的值:
(gdb) print a$1 = 10(gdb) print b$2 = 0
4. 继续执行,程序会因除零错误崩溃。此时可使用 bt 查看调用栈:
(gdb) continueProgram received signal SIGFPE, Arithmetic exception.0x000055555555514b in main () at hello.c:66 int result = a / b;(gdb) bt#0 0x000055555555514b in main () at hello.c:6
help 命令可查看所有 GDB 命令帮助。quit 并确认即可。-g 编译选项统一管理。通过本篇 Debian GDB调试器使用教程,你应该已经掌握了在 Debian 系统中安装 GDB、编译带调试信息的程序、设置断点、查看变量和分析崩溃原因等核心技能。GDB 虽然是命令行工具,但功能极其强大,是每个 C/C++ 开发者必备的 程序调试工具GDB。
无论你是刚接触 Linux 编程的新手,还是希望提升调试效率的开发者,掌握 GDB调试入门 技巧都将让你事半功倍。快在你的 Debian下使用GDB 实践起来吧!
本文由主机测评网于2025-12-20发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:https://www.vpshk.cn/20251210505.html