参考 GDB需要调试宏只需用-g3选项编译 -g 默认选项,同-g2-g0 不生成任何调试信息,和编译时不加“-g”是一样的。-g1 生成最少量的调试信息,这些信息足够用来通过backtrace查看调用栈符号信息。主要包括了函数声明、外部变量和行号等信息,但是不包含局部变量信息。这个选项比较少用。-g2 生成足够多的调试信息,可以用GDB进行正常的程序调试,这个是默认选项。-g3 在-g2的基础上产生更多的信息,如宏定义。