如何在Android上使用非零退出值2完成ndk设置?

cho*_*ook 10 android android-ndk

我想构建Gstreamer源代码并且需要它NDK.

我正在设置SDK Manager- > Android SDK- > SDK Tools- > NDK安装

我设置local.properties dk:dir="C\:\\Users\\ddd\\AppData\\Local\\Android\\sdk\\ndk-bundle.

设置ndk后,我尝试构建它,但执行失败.

Execution failed for task ':app:ndkBuild'. > Process 'command 'C:\Users\ddd\AppData\Local\Android\sdk\ndk-bundle\ndk-build.cmd" finished with non-zero exit value 2 信息.

如何在android上设置ndk?

Bha*_*anz 5

  1. 我从上面推断出你已​​经安装了NDK,确保你也安装了CMake和LLDB.(安装后重启Android Studio)

  2. 如果问题在此之后仍然存在,请尝试删除ndk库中的"obj"文件夹(位于"yourLibary/main/src/obj")并重建.

这解决了我的问题.


Mic*_*cer 5

要查找特定问题,请检查Android Studio中的“ 构建”标签,以查看哪个任务失败。对我来说,任务是“ cleanNative”。

然后从终端使用--debug选项手动运行此任务。

在Mac或Linux上:

./gradlew cleanNative --debug
Run Code Online (Sandbox Code Playgroud)

在Windows上:

gradlew cleanNative --debug
Run Code Online (Sandbox Code Playgroud)

然后从日志中查看失败的原因。就我而言,这是错误的ABI设置:

10:24:27.140 [QUIET] [system.out] Android NDK: The armeabi ABI is no longer supported. Use armeabi-v7a.    
10:24:27.140 [QUIET] [system.out] Android NDK: NDK Application 'local' targets unknown ABI(s): armeabi    
10:24:27.140 [ERROR] [system.err] /Users/michal-home/Library/Android/sdk/ndk-bundle/build/core/setup-app.mk:79: *** Android NDK: Aborting    .  Stop.
10:24:27.140 [QUIET] [system.out] Android NDK: Please fix the APP_ABI definition in /path-to-app/app/src/main/jni/Application.mk    
Run Code Online (Sandbox Code Playgroud)


yak*_*bom 3

您需要确保 NDK 设置正确 - 转到“文件”->“项目结构”->“SDK 位置”并确保正确设置 NDK 位置。如果是,则可能由于代码存在某些问题而导致编译失败,我们将需要更多信息来帮助您。