【发布时间】:2011-01-30 00:25:29
【问题描述】:
Android(gdbserver 在 Android 中运行) 说:
gdb:无法获取线程创建断点的位置:不支持请求的事件
那么,我怎么知道eclipse发送的gdb命令呢?
附:可以在 cygwin shell 中调试,只是不能在 eclipse 中调试。不知道eclipse发送了哪些命令。
【问题讨论】:
标签: android eclipse gdb android-ndk
Android(gdbserver 在 Android 中运行) 说:
gdb:无法获取线程创建断点的位置:不支持请求的事件
那么,我怎么知道eclipse发送的gdb命令呢?
附:可以在 cygwin shell 中调试,只是不能在 eclipse 中调试。不知道eclipse发送了哪些命令。
【问题讨论】:
标签: android eclipse gdb android-ndk
android NDK 中包含的 gdbserver(至少从 r4b 开始)不支持在多线程中进行调试。在 John Michelau 的评论之后,我有名义上的运气:
http://honeypod.blogspot.com/2008/01/debug-native-application-for-android.html
现在似乎支持多线程应用程序。关键是从安装在 Android 源代码树 prebuilt/linux-x86/toolchain/arm-eabi-4.2.1/bin/arm-eabi-gdb 中的客户端运行 GDB 客户端。
即使在这样做之后,我也只能在我的本机库加载之后调试线程。这是因为 GDB 不知道 Android 的链接器:
警告:无法找到动态链接器断点函数。 GDB 将无法调试共享库初始化程序和跟踪显式加载的动态代码。
【讨论】: