我正在尝试使用macport中的GDB(v 7.3.1)来调试用它编译的可执行文件 g ++ 4.7(也来自macports)。但是,我启动调试器,得到以下输出:
GNU gdb(GDB)7.3.1版权所有(C)2011 Free Software Foundation,Inc。 许可证GPLv3 +:GNU GPL版本3或更高版本 http://gnu.org/licenses/gpl.html这是免费软件:你是免费的 改变并重新分配它。在某种程度上没有任何保证 法律允许的。输入“show copying”和“show warranty” 细节。此GDB配置为“x86_64-apple-darwin11.2.0”。对于 错误报告说明,请参阅: http://www.gnu.org/software/gdb/bugs/ ... BFD:无法读取未知 load命令0x24 BFD:无法读取未知加载命令0x26 BFD: 无法读取未知的加载命令0x24 BFD:无法读取未知 加载命令0x26
然后,每当我尝试回溯时,调试器都无法提供任何 有关堆栈的信息;我输出如下:
> #0 0x00000001085106d5 in ?? ()
> #1 0x000000010833d9b6 in ?? ()
> #2 0x0000000107e23000 in ?? ()
> #3 0x00007f828341f630 in ?? ()
> #4 0x00007f828341bc10 in ?? ()
> #5 0x00007f8283421950 in ?? ()
> #6 0x00007f8283427020 in ?? ()
> #7 0x00007f8283425510 in ?? ()
> #8 0x00007f82834195e0 in ?? ()
> #9 0x0000000100000001 in ?? ()
> #10 0x0000000100000000 in ?? ()
我使用调试符号构建,我可以调试可执行文件 Linux操作系统。有谁知道这里发生了什么,或者我怎么解决它。它的 没有调试器真的很难解决某些问题!
答案 0 :(得分:1)
我对OSX或gdb的使用情况了解不多,但这似乎已经得到了很好的解决 在gdb 7.3.1发布之后,我似乎回想起OSX的发布和gdb或binutils的发布大约在同一时间,开发人员没有任何早期访问OS X.你可以尝试更高版本gdb。
我猜测7.3.1之后不久提交的以下补丁修复了它:
答案 1 :(得分:0)
GDB 7.4.1已修复此问题,您可以获取并构建它。