1

尝试在 Eclipse 中进行本地调试时,我得到“无法检测应用程序 ABI”。我没有得到任何结果,所以我尝试了 ndk-gdb(我在 Windows 上的 ndk-gdb.py)。

但是使用 ndk-gdb 给了我:

ERROR: The device does not support the application's targetted CPU ABIs!

       Device supports:  armeabi-v7a armeabi

       Package supports: .

发生这种情况是因为 ndk-gdb.py 函数:

def get_build_var(var):
    global GNUMAKE_CMD, GNUMAKE_FLAGS, NDK, PROJECT
    text = subprocess.check_output([GNUMAKE_CMD,
                                  '--no-print-dir',
                                  '-f',
                                  NDK+'/build/core/build-local.mk',
                                  '-C',
                                  PROJECT,
                                  'DUMP_'+var] + GNUMAKE_FLAGS
                                  )                                  

    # replace('\r', '') due to Windows crlf (\r\n)
    #  ...universal_newlines=True causes bytes to be returned
    #     rather than a str
    return text.decode('ascii').replace('\r', '').splitlines()[0]

返回一个“。” 当被要求提供 APP_ABI 时。我已经转储了子进程的 make call 参数,当我从命令行执行 make 调用时,我得到了“armeabi-v7a armeabi”的正确响应

我认为这与 python 无关,因为该错误与我的 Eclipse 唯一问题非常相似。

4

1 回答 1

2

尝试运行ndk-build DUMP_APP_ABI并确保输出干净。检查 Application.mk 是否有奇怪的编码和/或 CRLF。

应禁用此目标的所有使用$(info …)or等​​。$(__ndk_info)

于 2013-11-02T13:13:54.513 回答