【问题标题】:how to ndk setting finished with non-zero exit value 2 on android?如何在android上以非零退出值2完成ndk设置?
【发布时间】:2017-02-27 07:42:44
【问题描述】:

我想构建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?

【问题讨论】:

    标签: android android-ndk


    【解决方案1】:

    要查找具体问题,请检查 Android Studio 中的 Build 选项卡以查看失败的任务。对我来说,任务是“cleanNative”。

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

    在 Mac 或 Linux 上:

    ./gradlew cleanNative --debug
    

    在 Windows 上:

    gradlew cleanNative --debug
    

    从日志中,您可以看到失败的原因。就我而言,这是错误的 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    
    

    【讨论】:

      【解决方案2】:
      1. 我从上面推断你已经安装了 NDK,确保你也安装了 CMake 和 LLDB。 (安装后重启 Android Studio)

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

      这解决了我的问题。

      【讨论】:

        【解决方案3】:

        您需要确保 NDK 设置正确 - 转到 File->Project Structure->SDK Location 并确保 NDK 位置设置正确。如果是,则可能是由于代码问题导致编译失败,我们需要更多信息来帮助您。

        【讨论】:

        • NDK 目录的路径应该通过 File->Project Structure->SDK Location->Android NDK Location(最后一个字段)来设置。如果这不是您要问的,请准确说明您的意思。
        【解决方案4】:

        在我的案例和项目中,使用 privious ndk 版本(Revision 17c)很有帮助。所以我只是把它放在'C:\Users\UserName\AppData\Local\Android\sdk\ndk-bundle'

        另一个有用的问题是将您的 *.so 文件放在 jniLibs 文件夹中:

        How to include *.so library in Android Studio?

        【讨论】:

          【解决方案5】:

          检查您的 android 项目路径。

          我的文件夹名称中有空格也有类似的问题。避免这样的事情,否则 ndk 无法完成这项工作

          .\Users\User1\Desktop\androidprojects\我的项目\androidproject1

          改为使用

          .\Users\User1\Desktop\androidprojects\myproject\androidproject1

          【讨论】:

          • 这为我修复了以下错误:Process 'command 'D:\Android\SDK\ndk\21.1.6352462/ndk-build.cmd'' finished with non-zero exit value 2跨度>
          猜你喜欢
          • 2018-11-12
          • 1970-01-01
          • 1970-01-01
          • 2015-08-03
          • 1970-01-01
          • 2015-06-27
          • 1970-01-01
          • 2016-01-19
          • 2015-07-05
          相关资源
          最近更新 更多