GDB 7.3.1在OSX狮子(GDB 7.3.1 on OSX Lion)

2019-09-18 05:37发布

我试图用GDB(V 7.3.1)从MacPorts的调试与G ++ 4.7(也MacPorts的)编译的可执行文件。 但是,我开始调试,我得到下面的输出:

GNU GDB(GDB)7.3.1版权所有(C)2011自由软件基金会,Inc.许可的GPLv3 +:GNU GPL版本3或更高版本http://gnu.org/licenses/gpl.html这是自由软件:您可以自由修改和重新发布。 没有担保,在法律允许的范围内。 键入“显示复制”和“显示保修”的说明。 这是GDB配置为“x86_64的 - 苹果darwin11.2.0”。 对于错误报告的说明,请参阅: http://www.gnu.org/software/gdb/bugs/ ... BFD:无法读取未知加载命令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上的可执行文件的罚款。 有谁知道是怎么回事或如何我会解决它。 这真的很难解决某些问题没有一个调试器!

Answer 1:

我不知道很多关于OSX或者它GDB的使用,但是这似乎已经GDB 7.3.1发布后shorly固定的,我似乎记得一些关于OSX的释放和GDB或binutils的被释放大约在同一时间,有没有任何提前获得OS X的开发者你可以尝试GDB的更高版本。

我猜测,下面的补丁提交后不久7.3.1修复它:

http://permalink.gmane.org/gmane.comp.gnu.binutils/54607



Answer 2:

GDB 7.4.1已经修复了这个问题,你可以得到,并建立它。

http://sourceware.org/gdb/wiki/BuildingOnDarwin



文章来源: GDB 7.3.1 on OSX Lion