flutter 在前缀为的ABI的NDK工具链文件夹中未找到工具链:arm操作系统

x33g5p2x  于 2022-12-24  发布在  Flutter
关注(0)|答案(9)|浏览(99)

我正在处理一个Flutter项目,在我更新了我的Android Studio和一些SDK工具之前,一切都运行正常。然后,当我尝试运行我的项目时,我收到了以下错误:

FAILURE: Build failed with an exception.

*   What went wrong:
Execution failed for task ':app:stripDebugDebugSymbols'.

> No toolchains found in the NDK toolchains folder for ABI with prefix: arm-linux-androideabi

*   Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

*   Get more help at [https://help.gradle.org](https://help.gradle.org)

BUILD FAILED in 1m 4s
Exception: Gradle task assembleDebug failed with exit code 1

出了什么问题?我该怎么办?

whlutmcx

whlutmcx1#

主要原因是NDK 23的工具链与之前版本的NDK(22-)不同,因此旧版本的AGP(Android Gradle插件)不知道在哪里可以找到不同ABI的可执行文件。
对于我来说,只需将Android项目根目录中build.gradle的AGP版本更新为4.0+,例如

dependencies {
        classpath "com.android.tools.build:gradle:4.0.1"
        ...

这将解决问题。

注意:您需要将环境变量ANDROID_NDK_HOME设置为NDK 22-位置,即使Google的文档也不要求这样做,或者说它已被弃用。

如果您想坚持使用当前版本的AGP,还有另一种解决方法,只需添加以下内容

android {
    android.ndkVersion "21.4.7075529" // (or whichever NDK 22- version you have installed)
    ...

添加到模块的build.gradle(不是项目的build.gradle
可以在Configure the NDK for the Android Gradle plugin中找到解决此问题的其他方法

t9aqgxwy

t9aqgxwy2#

我用两种不同的方法解决了这个问题:

答:通过以下简单步骤将我的NDK从版本23.0.7123448降级为22.0.7026061

1.从android studio工具栏或设置菜单(文件--〉设置--〉外观和行为--〉系统设置--〉Android SDK)打开SDK管理器

1.选择SDK工具选项卡,并从窗口右下角选中显示软件包详细信息。然后只需取消选中要删除的任何版本,并选择应用

(For我删除了版本23.0.7123448并转到22.0.7026061解决了这个问题。但是如果您仍然有上述错误,请尝试降低*******NDK版本。最稳定的NDK版本是20.1.5948944
1.如果你已经完成了所有的步骤,你会看到下面的窗口弹出。点击确定,你都设置。

**B.**这个方法看起来很简单,但它确实有用。只需创建一个新的Flutter项目,并将所有工作(lib文件夹、资源等)放到新项目中。

eblbsuwk

eblbsuwk3#

环境
操作系统:大苏尔11.1
国家预防机制7.24.0
节点版本14.15.5
React Native客户端:2.0.1
天然 reactjs :0.63.4

命令

第一个月

错误

  • 问题出在哪里:

任务":app:stripDebugDebugSymbols"的执行失败。
在前缀为的ABI的NDK工具链文件夹中未找到工具链:arm操作系统

修复

检查Android SDK工具,NDK(并列):
在android工具栏中转到:
工具〉〉SDK管理器
![工具-软件开发工具包][1]
然后在弹出的旁边导航中转到:
外观和行为〉〉系统设置〉〉Android SDK

点击"SDK工具"

选中显示软件包详细信息旁边的复选框

    • 解决方案:**降级

参考文献

降级想法:Taba氏溶液

q9yhzks0

q9yhzks04#

我在Android项目根版本中将AGP更新为4.1+。gradle

dependencies {
    classpath "com.android.tools.build:gradle:4.1.0"
    ...

AGP 4.1+仅支持gradle版本gradle-6.5以上版本,因此我更新了gradle-wrapper.properties位于gradle/wrapper文件夹中的www.example.com文件中的distributionUrl

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

获取更多信息here

8e2ybdfx

8e2ybdfx5#

对我有效的是

  • 我将Gradle依赖项从3.5.1更改为4.0.1
dependencies {
        classpath 'com.android.tools.build:gradle:4.0.1'
    }

网站正在建设中。

  • Gradle对Gradle依赖项(gradle:4.0.1)的最低支持为gradle-6.1.1

如果您的项目gradle版本低于该版本,则必须通过下载更高版本进行更改,或者如果您拥有该版本并且正在使用 Package 器,则必须将发行版更改为高于或等于6.1.1版本的版本,该版本位于〉gradle〉wrapple〉gradle-wrapple.properties

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip
  • 您很可能需要添加到您的NDK for Gradle-6.7,受支持的NDK是NDK(并排)版本21.0.6113669,位于〉工具〉sdk管理器(android SDK)〉sdk工具〉ndk并排单击显示包详细信息单击并下载适合您的版本
qvk1mo1f

qvk1mo1f6#

我清理了c:\Users\User\AppData\Local\Android\Sdk\ndk\中的所有SDK文件夹

wgx48brx

wgx48brx7#

最近的AppCenter android依赖项更改导致我的android构建失败,并显示以下错误:
第一个月
我们的解决方案是在根build.gradle文件中将gradle版本从3.5.4升级到4.0.1

dependencies {
        classpath 'com.android.tools.build:gradle:4.0.1'
0vvn1miw

0vvn1miw8#

@gwang和@TillyJonesy的其他答案:
当使用--info(我使用AGP 3.5.4)运行Gradle命令时,您会看到,如果未提供NDK版本,AGP将尝试使用最高的NDK版本。

从Android NDK指南的文档来看,AGP〈= 3.5没有默认的NDK版本。
See: https://developer.android.com/studio/projects/install-ndk#default-ndk-per-agp

ggazkfy8

ggazkfy89#

面向原生Android开发人员的解决方案
转到文件-〉设置-〉外观和行为-〉系统设置-〉Android SDK-〉然后选择SDK工具并从底部选中“显示软件包详细信息”。
在NDK(并排)的下拉菜单中,选中22.1.7171670并取消选中其余项,然后应用并点击确定。

相关问题