Linux编程调试与认证学习全解析
一、GNU调试器gdb
1.1 gdb简介
当程序不能正常工作或突然报错退出时,我们需要调试器来找出错误原因。Linux包含了功能强大的GNU调试器gdb,它具有命令行界面,可用于调试C和C++程序。gdb能执行典型的调试任务,如:
- 设置断点,使程序在指定行停止。
- 监视程序中变量的值。
- 逐行执行程序。
- 修改变量以尝试纠正错误。
1.2 调试程序的准备工作
若要使用gdb调试程序,需确保编译器在可执行文件中生成并放置调试信息。这些信息包含程序中变量的名称以及可执行文件地址与源文件代码行的映射。为保证可执行文件适合调试,使用GCC或G++时应加上-g选项,可在makefile中定义变量CFLAGS为:
CFLAGS= -g1.3 运行gdb
调试程序最常见的方法是使用以下命令运行gdb:
gdb progname其中progname是程序的可执行文件名。运行后,gdb会显示一些信息并提示输入命令,在(gdb)提示符后可输入gdb命令。例如,输入help可显示命令列表:
(gdb) h