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 呼び出しパラメーターをダンプしました。コマンド ラインから make 呼び出しを実行すると、「armeabi-v7a armeabi」という正しい応答が返されます。

エラーはEclipseのみの問題と非常に似ているため、これはPythonに関係しているとは思いません。

4

1 に答える 1

2

実行ndk-build DUMP_APP_ABIして、出力がクリーンであることを確認してください。奇妙なエンコーディングや CRLF がないか Application.mk を確認してください。

$(info …)このターゲットでは、またはなどのすべての使用を$(__ndk_info)無効にする必要があります。

于 2013-11-02T13:13:54.513 に答える