当前位置: 首页 > 知识库问答 >
问题:

我的NDK项目由于CPU架构相关的问题而无法编译

邰德业
2023-03-14

有人能解释一下为什么我会出现这些错误吗?

Build command failed.


Error while executing process C:\Users\Kevin\Desktop\Android\Sdk\ndk-bundle\ndk-build.cmd with arguments {NDK_PROJECT_PATH=null APP_BUILD_SCRIPT=C:\Users\Kevin\Desktop\Mygame\proj.android-studio\app\jni\Android.mk NDK_APPLICATION_MK=C:\Users\Kevin\Desktop\Mygame\proj.android-studio\app\jni\Application.mk APP_ABI=armeabi NDK_ALL_ABIS=armeabi NDK_DEBUG=1 APP_PLATFORM=android-14 NDK_OUT=C:/Users/Kevin/Desktop/Mygame/proj.android-studio/app/build/intermediates/ndkBuild/debug/obj NDK_LIBS_OUT=C:\Users\Kevin\Desktop\Mygame\proj.android-studio\app\build\intermediates\ndkBuild\debug\lib NDK_TOOLCHAIN_VERSION=4.9 APP_PLATFORM=android-10 NDK_MODULE_PATH=C:/Users/Kevin/Desktop/Mygame/cocos2d;C:/Users/Kevin/Desktop/Mygame/cocos2d/cocos;C:/Users/Kevin/Desktop/Mygame/cocos2d/external -j4 NDK_DEBUG=1 APP_SHORT_COMMANDS=false LOCAL_SHORT_COMMANDS=false -B -n}


Android NDK: INTERNAL ERROR: The armeabi ABI should have exactly one `architecture definitions. Found: ''`    
process_begin: CreateProcess(NULL, "", ...) failed. 
*** Android NDK: Aborting...    .  Stop.
Build command failed.


Error while executing process C:\Users\Kevin\Desktop\Android\Sdk\ndk-bundle\ndk-build.cmd with arguments {NDK_PROJECT_PATH=null APP_BUILD_SCRIPT=C:\Users\Kevin\Desktop\Mygame\proj.android-studio\app\jni\Android.mk NDK_APPLICATION_MK=C:\Users\Kevin\Desktop\Mygame\proj.android-studio\app\jni\Application.mk APP_ABI=armeabi NDK_ALL_ABIS=armeabi NDK_DEBUG=0 APP_PLATFORM=android-14 NDK_OUT=C:/Users/Kevin/Desktop/Mygame/proj.android-studio/app/build/intermediates/ndkBuild/release/obj NDK_LIBS_OUT=C:\Users\Kevin\Desktop\Mygame\proj.android-studio\app\build\intermediates\ndkBuild\release\lib NDK_TOOLCHAIN_VERSION=4.9 APP_PLATFORM=android-10 NDK_MODULE_PATH=C:/Users/Kevin/Desktop/Mygame/cocos2d;C:/Users/Kevin/Desktop/Mygame/cocos2d/cocos;C:/Users/Kevin/Desktop/Mygame/cocos2d/external -j4 NDK_DEBUG=0 APP_SHORT_COMMANDS=false LOCAL_SHORT_COMMANDS=false -B -n}

Android NDK: INTERNAL ERROR: The armeabi ABI should have exactly one architecture definitions. Found: ''    
process_begin: CreateProcess(NULL, "", ...) failed.
*** Android NDK: Aborting...    .  Stop.

共有1个答案

姬弘文
2023-03-14

很有可能,您已经安装了NDK r17,它不再支持armeabi了。你的gradle插件不知道这个最近的变化。您必须升级:在build.gradle中,您应该有

buildscript { dependencies {
    classpath 'com.android.tools.build:gradle:3.1.2'
} }

和在gradle/wrapper/gradle-wrapper.properties中

distributionUrl=https\://services.gradle.org/distributions/gradle-4.4-all.zip

但是即使在升级之后,您的build.gradle也很可能缺少abiFilters语句,因此您的项目构建速度较慢,APK也比所需的大。

您可能只需要APK中的ABI,

android { defaultConfig { ndk {
    abiFilters 'armeabi-v7a'
} } }
 类似资料:
  • 我接手了一个项目,它不编译。当我构建它时,我得到了以下错误: 已存在的程序类型:com.google.gson.exclusionStrategy 下面是该项目的构建。gradle应用插件:'com.android.application'

  • 我有一个问题,当我建立我的Maven项目在网豆。当在我的固定电脑上,它工作得很好,但在我的笔记本电脑上,我不能让它工作。我得到以下错误: 无法在project SnakeAppWeb页上执行目标:无法解析project se的依赖项。查默斯。snake:SnakeAppWebpage:war:1.0:org.apache.derby:derbyclient:jar:10.6.1.0(编译)、org

  • 我在构建项目时遇到以下错误。我怀疑Butterknife库是一个原因,因为我通过它启用了注释。我们是否需要任何特殊的配置来包括butterknife和Ant build?如果你有任何建议,请告诉我。 [javac]错误:错误的服务配置文件,或在构造处理器对象javax时引发异常。注释。处理。处理器:提供者匕首。内部的科德根。无法实例化ProviderProcessor:java。lang.NoCl

  • ////我在环境变量中设置了jdk路径。但是应用程序无法安装。我试了很多次。但是错误仍然there.do回复如果有任何解决方案。 ///

  • 自从我为Minecraft Modding更新Java之后,我最近遇到了一些问题。如果你想看完整的故事,看看我的另一个问题。我一直在修改minecraft,它运行得很好,但当我更新到64位java以便Feed the Beast运行得更快时,我出现了一些错误。最后我在一个地方找不到我的任何项目,所以我问了我的第一个问题。有人建议导入它们,但当我将文件夹导入Java并尝试运行它时,它告诉我无法导入文

  • Cassandra源代码是最新的,它是从git@github.com: apache/cassandra.git.克隆的 JDK版本是1.8.0_05 操作系统:Linux 3.13.0-62-generic#102 Ubuntu SMP 后来,我尝试使用不同的JDK版本编译它,发现jdk1.8。0_11仍然有同样的问题,但是从jdk1.8开始。0_20,这个问题已经修复。 我想问是什么导致了这个