日期:2014-05-16  浏览次数:20703 次

gdb 调试 core 文件时,启动后,bt信息不正确
RT
类似这样的:
#0 ox00000036aea30680 in ??()
.................
#3 ox00000036b3e1b38c int ??() from /usr/lib64/libstdc++.so.6
.................


进去后堆栈信息部正确,这个一般是什么原因造成的?有什么方法可以获取正确的堆栈信息?

------解决方案--------------------
没有符号表,试试用 file 加载
------解决方案--------------------
你采用调试来调试动态库文件,必须在编译的时候加入-g选项,这样能够在生成的目标文件里产生调试信息,以便你在gdb调试时,能够获取调试所需的信息,此外,要是调试的源码很多的话,你可以利用gdb的directory命令指定代码源,可以参考一下我刚写的一篇文章:http://blog.chinaunix.net/space.php