4

我还在使用 ndk-gdb,现在正试图解决导致我做另一个问题的主要问题,我自己回答了 xD

ndk-gdb 告诉我当前的库没有符号表。这就像我正在调试的文件与模拟器正在执行的文件不同。但我重新上传了应用程序。它还说“使用文件命令”,但文件仅在我调试本地程序时使用,对吗?它不适合当我像使用 android 一样远程调试时。

所以我该怎么做?自3天以来,我一直在寻找解决方案,但我仍然一无所知。除了错误的文件问题,我可能应该问这个消息的其他原因是什么?

谢谢。一些信息:在项目的父目录中调用了 ndk-build 和 ndk-gdb。android api 级别 10 (2.3.3) android ndk r7b

Android.mk 文件内容:

MY_LOCAL_PATH := $(call my-dir)
LOCAL_PATH := $(MY_LOCAL_PATH)
include $(CLEAR_VARS)
LOCAL_MODULE := wrapper
LOCAL_SRC_FILES := wrapper.c \
                aes.c \
                password.c \
                sha256.c \
                aescrypt.c
include $(BUILD_SHARED_LIBRARY)
4

4 回答 4

3

如果您使用 Eclipse/Sequoyah,请检查文件 obj/local/armeabi/gdb2.setup 是否仅包含有效的 Unix 结束行样式 <0A>。

使用包含错误结尾行 <0D><0D><0A> 的生成文件,我收到以下消息:

没有加载符号表。使用“文件”命令。

于 2012-03-05T16:48:52.383 回答
3
No symbol table is loaded.  Use the "file" command.

如果工作空间的目录路径名称中有空格,例如“C:\Documents and Settings\myworkspace”,则可能会出现此消息,解决方案是使用不带空格的路径,例如“c:\我的工作空间”

于 2013-01-31T08:10:32.167 回答
2

我也遇到这个问题,因为我尝试在加载之前调试共享库,下面是我的过程虽然是用中文写的,你可以使用谷歌翻译,祝你好运!

http://blog.csdn.net/xinfuqizao/article/details/7625886

于 2012-06-04T01:16:21.360 回答
0

另一个可能导致“未加载符号表”的问题是 ndk-gdb 脚本无法从手机中提取 app_process 文件。

这发生在我身上是由于 ndk-gdb.py 中的一个边缘错误,其中检查“app_process32”是否存在的代码错误地成功了。而不是像脚本打算那样回退到“app_process”,而是尝试下载不存在的文件。

于 2016-01-06T05:39:49.477 回答