在Linux系统中,没有调试信息,调试发行版时就会困难得多。因为没有调试符号文件,所以在gdb命令窗口中使用bt命令和l命令后都看不到相应的源代码信息。
1、从调试版本中提取调试符号
生成调试符号表
objcopy --only-keep-debug run.debug run.symbol
加上调试符号调试发行版
gdb --symbol=run.symbol -exec=run_release
2、直接使用调试版本作为符号源
gdb --symbol=run.debug -exec=run.release
一旦符号加载成功,就可以像调试版程序一样进行各种操作,比如设置断点、查看变量信息等。
3、对于发行版生成的转储文件,也可以使用这种方式进行调试。
gdb run.debug core.release