我已经尝试了几天调试样本hello-jni的c代码,没有成功.我已经安装了所有要求并且跟踪了许多博客文章(每次都重复这个过程)以尝试使其正常工作.
我在用
我已经按照 http://developer.android.com/tools/sdk/ndk/index.html 来设置和构建apk.它构建和安装很好,我可以调试java代码,如果作为Android应用程序启动
我跟着这篇关于NDK插件http://tools.android.com/recent/usingthendkplugin的文章 但是当在c代码中作为带有断点的Android Native Application启动时,应用程序启动并正常运行,没有断点被击中没有错误消息!
任何帮助将不胜感激.谢谢!
编辑:
这是在清除之前在控制台中出现的一些错误半秒钟
警告:解析目标库列表时(在第2行):没有为/ system/bin/linker定义的段
警告:无法加载52个库的共享库符号,例如/ system/bin/linker.
使用"info sharedlibrary"命令查看完整列表.
你需要"set solib-search-path"或"set sysroot"吗?
警告:无法找到动态链接器断点功能.
GDB将无法调试共享库初始化程序并跟踪显式加载的动态代码.
退出(在程序恢复时期望信号SIGINT)
事实证明,我使用的上述指南就是我所需要的,并且一切正常。
警告消息只是......警告,因此本机代码的调试一直有效。我的问题是本机函数调用,在 gdb 可以附加之前,我的断点立即被调用。我将 JNI 函数调用放入 onClick 中,发现我的断点最终被命中。
我希望上面的链接和这个答案可以帮助别人。谢谢...
| 归档时间: |
|
| 查看次数: |
4887 次 |
| 最近记录: |