重新加载符号后刷新Eclipse(gdb)堆栈跟踪

时间:2012-10-14 17:27:06

标签: eclipse gdb eclipse-cdt

我正在通过Eclipse远程调试Android NDK应用程序(使用ADT和CDT)。

由于某种原因,gdb无法挂钩到Android链接器,因此加载库不会导致符号加载。发生崩溃时,可能尚未加载某些符号。

我在Eclipse Console视图中执行set solib-search-path obj/local/armeabi,这会导致GDB重新加载符号。之后,我可以发出bt来获取GDB回溯并且它可以正常工作。

如何使用正确的回溯信息刷新Eclipse Debug视图?步进不是一种选择,因为我正处于SIGSEGV处理的中间。

P.S。根据Android NDK Revision 8b,现在已修复:

Fixed several issues in ndk-gdb:
...
* Updated tool to retrieve /system/bin/link information, so gdb on the host can set a breakpoint in __dl_rtld_db_dlactivity and be aware of linker activity (e.g., rescan solib symbols when dlopen() is called).

Eclipse showing only partial backtrace

1 个答案:

答案 0 :(得分:1)

一种可能的选择似乎是跳转到我所在的确切指令,即:

jump * 0x40102ab6

我希望有一个更方便的选择: - )