我正在尝试使用 macports 中的 GDB (v 7.3.1) 来调试用以下命令编译的可执行文件
g++ 4.7(也来自 macports)。但是,我启动调试器,得到以下输出:
GNU gdb (GDB) 7.3.1 版权所有 (C) 2011 自由软件基金会, Inc.
许可证 GPLv3+:GNU GPL 版本 3 或更高版本http://gnu.org/licenses/gpl.html http://gnu.org/licenses/gpl.html这是免费软件:你是自由的
更改并重新分发它。没有任何保证,在一定程度上
法律允许的。输入“显示复制”和“显示保修”
细节。该 GDB 被配置为“x86_64-apple-darwin11.2.0”。为了
错误报告说明,请参阅:http://www.gnu.org/software/gdb/bugs/ 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。有谁知道这里发生了什么或者我如何解决它。它是
如果没有调试器,确实很难修复某些问题!
我对 OSX 或 gdb 的使用不太了解,但这似乎已经很快修复了
gdb 7.3.1 发布后,我似乎记得 OSX 的发布和 gdb 或 binutils 的发布大约在同一时间,开发人员没有任何早期访问 OS X 的权限。您可以尝试更高的版本的gdb。
我猜测 7.3.1 修复后不久提交的以下补丁修复了该问题:
http://permalink.gmane.org/gmane.comp.gnu.binutils/54607 http://permalink.gmane.org/gmane.comp.gnu.binutils/54607
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)