android - ndk-gdb 和 eclipse "No Source File named..."

标签 android eclipse debugging gdb android-ndk

我正在尝试调试我使用 android ndk-build 脚本构建的一些 native 代码,但遇到了一个小障碍。我已经将 native 代码编译到一个共享库中,我想在 eclipse 中使用 ndk-gdb 对其进行调试。代码是使用

构建的
APP_OPTIM := debug

在 Application.mk 文件中,我还添加了 -g 标志以确保安全。

Eclipse 配置为调试 native 代码,我可以连接到设备上的 gdbserver,但由于 gdb 出现以下错误,我无法设置断点:

496-break-insert /home/lithium/workspace/supermariowar/jni/SMW/SDL_android_main.cpp:17
No source file named /home/lithium/workspace/supermariowar/jni/SMW/SDL_android_main.cpp.
&"No source file named /home/lithium/workspace/supermariowar/jni/SMW/SDL_android_main.cpp.\n"
496^done
(gdb) 
499-exec-continue
499^running
(gdb) 

在显示的位置确实有一个名为 SDL_android_main.cpp 的文件,但这是我遇到的错误,此时它不会命中断点。

如有任何想法或建议,我们将不胜感激。

-克拉克-

最佳答案

该错误并不意味着 GDB 看不到 /home/lithium/workspace/supermariowar/jni/SMW/SDL_android_main.cpp。相反,这意味着 GDB 在当前加载的可执行文件和共享库中看不到该源的调试信息。

可能是你的共享库还没有加载。

或者可能是 GDB 知道该文件,但使用其他名称。尝试 info sourcesbreak SDL_android_main.cpp:17

关于android - ndk-gdb 和 eclipse "No Source File named...",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7459140/

相关文章:

java - 如何添加java项目依赖玩framework 2.2.1 java项目

eclipse - HTTP 状态 404 - 请求的资源 (/ProjectName/) 不可用

Android 录制,结果出现音频视频同步问题

android - 获取 Android 应用程序的当前上下文

android - 中断 IntentService

java - Eclipse 内置 shell

debugging - 如何在 VSCode (Visual Studio Code) 中一起调试 HTML 和 JavaScript?

debugging - 验证 Helm chart 内容

javascript - 我的 javascript web workers 在随机的地方静静地死去。我该如何调试呢?

java - Android Studio 找不到 Oboe header ,但应用程序仍然运行