一、什么是gdb?
gdb是一个由GNU开源组织发布的、UNIX/LINUX操作系统下的、基于命令行的、功能强大的程序调试工具。
gdb中的命令固然很多,但我们只需要掌握其中最重要的十几个命令,就大致可以完成日常的基本的程序调试工作。
二、怎么进入gdb调试模式?
不是什么可执行程序都是可以用gdb来进行调试的。要使得可执行程序能被gdb调试,必须在程序的编译过程中加入编译选项,即-g选项。这个选项将在编译的时候为目标文件加入调试信息,这样才能被gdb调试。
gcc -g -c hello.c -o hello.o
上面命令编译出一个加入调试信息的目标文件hello.o
其中: -g:加入调试信息的选项
-c:只编译不链接,生成目标文件,是不可执行的
-o:为生成的目标文件命名
注意:如果一个程序有多个源文件,则要调试这个程序,则需要在生成每个源文件的目标文件的命令中加入-g选项,最后链接成的可执行程序才是可以用gdb调试的,否则调试时就出现错误 no symbol table is loaded