无法进入本机代码 - Android
Not able to step into native code - Android
我一直在尝试在 Android studio 上调试本机代码。
我的调试器在简单的 hello world jni 代码上运行良好。
但是当我尝试对与共享库 libcrypto.so 和 libccmssl.so 链接的代码执行相同操作时,我无法进入本机代码。
现在我不确定上面的观察是否重要。但我不确定下一步该去哪里探索。在加载库时,我得到以下(附图)SIGILL,之后,按继续,代码运行,调用本机函数并返回值,但调试器不会进入本机代码。
任何我应该看的指针都将不胜感激,谢谢
一周以来,我一直在尝试让一个外部 c++ 项目与 android studio 一起工作,并试图缩小原因 --> "Why I am not able to step into the native code "
对我来说,问题是 LOCAL_CPPFLAGS 中存在“-gstabs+”标志
我删除了它 --> 构建 --> 和 Yay
标志说明如下:
https://gcc.gnu.org/onlinedocs/gcc-3.3.6/gcc/Debugging-Options.html
-gstabs+
使用只有 GNU 调试器 (GDB) 可以理解的 GNU 扩展,以 stabs 格式生成调试信息(如果支持的话)。 使用这些扩展很可能使其他调试器崩溃或拒绝读取程序。
注意:我在问题中发布的上述 SIGILL 图像仍然存在,但这并不是导致调试器无法执行它的原因。
我一直在尝试在 Android studio 上调试本机代码。 我的调试器在简单的 hello world jni 代码上运行良好。 但是当我尝试对与共享库 libcrypto.so 和 libccmssl.so 链接的代码执行相同操作时,我无法进入本机代码。
现在我不确定上面的观察是否重要。但我不确定下一步该去哪里探索。在加载库时,我得到以下(附图)SIGILL,之后,按继续,代码运行,调用本机函数并返回值,但调试器不会进入本机代码。
任何我应该看的指针都将不胜感激,谢谢
一周以来,我一直在尝试让一个外部 c++ 项目与 android studio 一起工作,并试图缩小原因 --> "Why I am not able to step into the native code "
对我来说,问题是 LOCAL_CPPFLAGS 中存在“-gstabs+”标志 我删除了它 --> 构建 --> 和 Yay
标志说明如下: https://gcc.gnu.org/onlinedocs/gcc-3.3.6/gcc/Debugging-Options.html
-gstabs+ 使用只有 GNU 调试器 (GDB) 可以理解的 GNU 扩展,以 stabs 格式生成调试信息(如果支持的话)。 使用这些扩展很可能使其他调试器崩溃或拒绝读取程序。
注意:我在问题中发布的上述 SIGILL 图像仍然存在,但这并不是导致调试器无法执行它的原因。