Je veux compiler un projet Android open source (Netguard) en utilisant gradel ( gradlew clean build
) Mais j'ai rencontré cette erreur:
A problem occurred configuring project ':app'.
> Exception thrown while executing model rule: NdkComponentModelPlugin.Rules#cre
ateToolchains
> No toolchains found in the NDK toolchains folder for ABI with prefix: llvm
J'ai recherché mais je n'ai pas trouvé que quelque chose aidait. Voici le principal build.gradle
:
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle-experimental:0.6.0-alpha1'
}
}
allprojects {
repositories {
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
Et voici build.gradle
le app
projet:
apply plugin: 'com.android.model.application'
model {
android {
compileSdkVersion = 23
buildToolsVersion = "23.0.2"
defaultConfig.with {
applicationId = "eu.faircode.netguard"
minSdkVersion.apiLevel = 21
targetSdkVersion.apiLevel = 23
versionCode = 2016011801
versionName = "0.76"
archivesBaseName = "NetGuard-v$versionName-$versionCode"
}
}
android.ndk {
moduleName = "netguard"
toolchain = "clang"
ldLibs.add("log")
}
android.sources {
main {
jni {
source {
srcDir "src/main/jni/netguard"
}
exportedHeaders {
}
}
}
}
android.buildTypes {
release {
minifyEnabled = true
proguardFiles.add(file('proguard-rules.pro'))
ndk.with {
debuggable = true
}
}
}
android.buildTypes {
debug {
ndk.with {
debuggable = true
}
}
}
android.productFlavors {
create("all") {
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:23.1.+'
compile 'com.android.support:recyclerview-v7:23.1.+'
compile 'com.squareup.picasso:picasso:2.5.+'
}
Et j'utilise gradle-2.9-all
et android-ndk-r10e
. Je ne sais pas si je dois mentionner autre chose, alors commentez si vous avez besoin d'informations.
Réponses:
Deux ans se sont écoulés, maintenant si vous rencontrez ici, vous pouvez éventuellement rencontrer un message d'erreur comme celui-ci:
ou
Le dernier NDK a supprimé le support pour
mips
abi, et la version Earler du plugin Android Gradle vérifie toujours l'existence de la chaîne d'outils Mips. voir ici pour plus d'informations .Solution : mettez à niveau le plugin Android Gradle vers 3.1 ou plus récent.
Par exemple, ajouter les éléments suivants dans le niveau de projet [28-sept-2018]
Solution : créez une
mipsel-linux-android
structure de dossiers pour tromper l'outil. Le moyen le plus simple serait de faire un lien symbolique versaarch64-linux-android-4.9
.Vérifiez ce fil de trois options pour résoudre ce type de problème
la source
build.gradle
file, something likecom.android.tools.build:gradle:3.2.0-rc02
, not Gradle version# on Mac cd ~/Library/Android/sdk/ndk-bundle/toolchains ln -s aarch64-linux-android-4.9 mips64el-linux-android ln -s arm-linux-androideabi-4.9 mipsel-linux-android
mklink /d mips64el-linux-android aarch64-linux-android-4.9
et amklink /d mipsel-linux-android arm-linux-androideabi-4.9
fonctionné pour moi aussi.Pour Android studio 3.2.1+
Mettez à niveau votre plugin Gradle
Si vous obtenez maintenant cette erreur:
ajoutez simplement google () à vos référentiels, comme ceci:
Codage heureux - :)
la source
J'ai corrigé cette erreur en désinstallant le NDK dans les SDK-Tools. Donc, si vous n'avez pas besoin du NDK, désinstallez-le.
la source
J'ai rencontré le même problème lors de la mise à jour d'Android Studio de 2.0 à 2.1 sur ma machine Windows 8.
J'ai trouvé une solution pour cela.Veuillez utiliser les étapes suivantes.
Cela se produit car le studio Android n'obtiendra pas de mise à jour NDK complète dans le canal stable. Si vous n'utilisez pas NDK pour le développement de votre projet, vous pouvez simplement supprimer le dossier NDK de votre répertoire SDK.
la source
Error : Android MIPS ToolChain directory "" does not exist
" dans Game Maker Studio 2 sur un Mac. Mais j'avais besoin d'obtenir la version 17c du NDK à partir d'ici: developer.android.com/ndk/downloads/older_releases (selon: reddit.com/r/gamemaker/comments/9m958a/… ) Merci @nithinjith! ... toujours pas en construction cependant, besoin de résoudre:Android NDK: Please fix the APP_ABI definition in /Users/../Library/Android/sdk/ndk-bundle/build/core/default-application.mk
Message d'erreur: «Aucune chaîne d'outils trouvée dans le dossier des chaînes d'outils NDK pour ABI avec le préfixe: llvm».
Après une nouvelle installation Web d'Android Studio avec NDK, j'ai importé un exemple de code Android qui utilisait NDK depuis GitHub et j'ai essayé de le compiler.
En conséquence, une erreur s'est produite:
Solution: pour certaines raisons, le processus d'installation standard sur macOS n'a pas réussi à installer un ensemble complet:
~/Library/Android/sdk/ndk-bundle
avait manqué le dossiertoolchains
avec tous les outils,(il devrait être comme ceci:
~/Library/Android/sdk/ndk-bundle/toolchains
)La solution consistait à télécharger NDK séparément, à l'ouvrir, à copier le dossier
toolchain
et à le coller dans le dossier:Après cela, cela a bien fonctionné pour moi.
la source
Pas à pas:
1) Ouvrez la page avec les anciennes versions de NDK :
https://developer.android.com/ndk/downloads/older_releases
2) Acceptez les conditions:
3) Téléchargez l'ancienne version de
NDK
(par exemple 16b):4) Ouvrez votre
toolchains
répertoire.5) Transférez les fichiers dont vous avez besoin du
toolchains
dossier du fichier zip téléchargé vers votretoolchains
dossier:6) Reconstruisez le projet:
UPD 30 sept. 2018:
J'ai utilisé Android NDK Revision r16b pour corriger cette erreur dans mon propre cas. Je présente donc l'exemple avec cette version.
Mais il vaut mieux utiliser l'Android NDK, Revision r17c (juin 2018). C'est le dernier, supportant les mips (recommandation raisonnable du commentaire du week-end).
la source
(for example 16b)
, il est préférable de préciser quelle version de NDK est la dernière prise en charge des mips. via la note de publication d'Android NDK Revision r17c (juin 2018) : la prise en charge d'ARMv5 (armeabi), MIPS et MIPS64 a été supprimée. Toute tentative de création de l'un de ces ABI entraînera une erreur. C'est16b
exactement.16b
exactement. r17c est la première version qui a supprimé le support pour MIPS :)Sans rien télécharger, copier ou créer un lien symbolique, j'ai pu "corriger" l'erreur en créant simplement un répertoire vide où l'ancienne version du plugin Android Gradle attend la chaîne d'outils mips supprimée:
Évidemment,
$ANDROID_HOME
pointe ici la racine de l'installation du SDK Android. Si vous utilisez MacOS , remplacez-lelinux-x86_64
pardarwin-x86_64
dans la commande ci-dessus. Sous Windowswindows-x86_64
.la source
J'ai désinstallé le NDK car je n'en avais pas besoin. Accédez au gestionnaire SDK sur Android studio (Outils -> Android -> Gestionnaire SDK). Si NDK est installé. Décochez simplement la case et cliquez sur OK. Les composants installés seront supprimés.
la source
Dans mon cas, cette erreur s'est produite lors de la création d'un nouveau projet Java Android Studio (Android studio 3.2.1) avec
J'ai donc rétrogradé à
Ce n'est pas la meilleure solution, restez dans une version plus ancienne, mais c'est peut-être juste un bogue temporaire dans la bêta car le chemin NDK dans local.properties est toujours le même, mais l'IDE ne se plaint plus
la source
Android NDK 18.0 * semble avoir un problème de ne pas créer tous les fichiers dans les dossiers après l'extraction. En raison de cela, la compilation de votre application échouera, ce qui utilise des builds ndk.
Mieux vaut utiliser la version NDK 17.1 * ( https://developer.android.com/ndk/downloads/ ), etc. et vous pouvez extraire ou utiliser l'extraction de studio Android pour ndk-bundle par défaut, cela fonctionnera bien.
la source
[ https://github.com/tensorflow/tensorflow/tree/master/tensorflow/examples/android
Pour les personnes essayant cet exemple et rencontrant des problèmes avec le dernier NDK. Peut suivre cette solution. Dans build.gradle, changez cela
À
La raison en est que les mips sont déconseillés dans les dernières versions de ndk, Gradle version 3.1.2 n'aura pas de contrainte pour les mips. Il suppose la présence de ces dossiers manquants.
la source
Ouvrez Android Studio, allez dans Outils puis Android puis SDK, décochez NDK Si vous n'en avez pas besoin et redémarrez Android studio.
la source
La solution simple est de télécharger et d'extraire le fichier suivant qui contient les dossiers mips64el-linux-android-4.9 et mipsel-linux-android-4.9, dans votre dossier de chaînes d'outils à l'intérieur de sdk "android-sdk \ ndk-bundle \ toolchains".
Télécharger ce fichier et extraire le tricheur des chaînes d'outils
la source
Dans votre fichier Gradle au niveau du projet, augmentez la version de chemin de classe des dépendances de bas en haut comme
changer comme
la source
Résolu en ajoutant une
google()
dépendance dans les deux référentiels dansbuild.gradle
(Project: ProjectName). puis synchronisez votre projetla source
J'ai eu un problème similaire, mais je voulais utiliser la version r9d de NDK en raison des exigences du projet.
Dans
local.properties
le chemin d'accès a été défini surndk.dir=C\:\\Android\\ndk\\android-ndk-r9d
mais cela a conduit au problème:La solution était de:
sdk\ndk-bundle\toolchains
à\ndk\android-ndk-r9d\toolchains
Il me semble que les chaînes d'outils copiées ne sont pas utilisées, mais pour une raison quelconque, elles doivent être présentes.
la source
J'ai résolu cette question par ndk non installé, parce que je n'en ai pas besoin
la source
Voici le correctif.
Lors de la compilation d'un projet dans un studio Android, je rencontre parfois:
Cela peut être dû à la mise à jour des composants associés. La solution est au studio Android (Outils -> Android -> SDK Manager). Sélectionnez l'élément ndk et supprimez-le. Si le programme en a besoin, vous pouvez le réinstaller. Cela garantira que l'emplacement du dossier est correct et il n'y aura pas un tel problème.
la source
Pour le réparer comme je l'ai fait
Fichier Android Studio> structure du projet et accédez au projet
changer la version Gradle en 4.6 et la version du plugin Android en 3.2.1
vérifier la capture d'écran
puis nettoyez le projet si vous avez cette erreur "Impossible de trouver aapt2-proto.jar"
allez sur build.gradle (projet)
Essayez de déplacer la méthode google () (fichier .gradle) en haut de son bloc d'exécution dans l'ordre des référentiels dans lesquels elle recherche, ce qui provoque le problème.
par exemple, changez ceci:
Pour ça:
Apportez ces modifications dans "buildscript" et "allprojects"
vérifier la capture d'écran
Si vous n'avez pas trouvé google () ajoutez-le
la source
Pour Android Studio 3.2.1 Mettez à jour votre
Version Gradle 4.6
Plugin Android version 3.2.1
la source
Le problème survient principalement lorsque vous clonez un projet précédent spécialement à partir de github. Ce que vous pouvez faire c'est
chemin de classe 'com.android.tools.build:gradle:3.2.1'
dans le niveau de votre projet.
Ensuite, modifiez toutes les instances de compilation avec implémentation, sauf compileSdkVersion, conservez-la telle qu'elle est dans votre niveau de niveau d'application.
Au lieu de synchroniser, cliquez maintenant sur créer un projet (Ctrl + F9)
Ajoutez des référentiels google maven si nécessaire.
Mettez à niveau l'emballage gradle si nécessaire.
(Android Studio IDE vous demandera / vous guidera de la même manière pour les étapes 4 et 5)
ça corrige !! Profitez du codage
la source
REMARQUE: Cette réponse semble être spécifique à:,
No toolchains found in the NDK toolchains folder for ABI with prefix: mips64el-linux-android
mais elle a été liée ici par:* /programming/52193274/no-toolchains-found-in-the-ndk-toolchains-folder-for-abi-with-prefix-mips64el-l
De NDK r19b:
No toolchains found in the NDK toolchains folder for ABI with prefix: mips64el-linux-android
, mettez à jour votre fichier de projet pour [utiliser la version 3.1 ou plus récente du plugin]. Vous devrez également effectuer une mise à niveau vers Android Studio 3.1 ou une version plus récente.la source
Si vous n'utilisez pas le NDK, désactivez la variable d'environnement
ANDROID_NDK_HOME
.la source
Pour moi, je pense qu'il pourrait y avoir un problème lors de l'installation d'Android NDK à partir d'Android Studio. J'ai pu résoudre ce problème de la manière suivante
Ndk android téléchargé depuis
https://developer.android.com/ndk/downloads/index.html
et placé à l'intérieur de ndk-bundle (où votre sdk android est installé). Pour plus d'informations, consultez ces écrans.
https://app.box.com/s/dfi4h9k7v4h0tmbu3z9qnqx3d12fdejn
la source
Si vous utilisez Ionic 3 Remove ndk des outils Android Studio SDK.
la source
Trouvez votre propre android-SDK local, si vous téléchargez le SDK correspondant de ndk, il y aura un dossier appelé "ndk-bundle"
Il y a un dossier appelé "toolchains" à l'intérieur.
Nous avons remarqué qu'il n'y a aucun fichier associé à mips64el à l'intérieur.
La solution est la suivante:
Cliquez ici pour télécharger le package NDK séparément via le navigateur. Après avoir décompressé, ouvrez le dossier "toolchains", comparez-le avec le dossier android-sdk-> ndk-bundle-> toolchains, trouvez le dossier manquant, copiez le dernier 3. Recompilez, le problème est résolu. J'espère que ça t'aide à t'accoupler
la source
Face au même problème.
J'ai eu du succès de différentes manières.
Ouvrez votre fichier buldle.gradle et mettez à niveau les versions pour suivre les deux classpath
classpath 'com.android.tools.build:gradle:3.2.1' classpath 'com.google.gms: google-services: 4.2.0'
Ensuite, synchronisez et obtenez un dilaog pour la mise à jour de la version Gradle, puis cliquez sur ce lien et attendez le téléchargement de toutes les mises à jour requises (Internet Hope disponible). Après avoir pris longtemps, vous avez réussi.
la source
Tout d'abord, essayez de mettre à jour la version ndk https://developer.android.com/ndk/downloads/
Si cela ne fonctionne pas, vous pouvez essayer ce qui suit:
Créer un dossier
Accédez au dossier Sdk \ ndk-bundle \ toolchains (dans mon cas, son C: \ Users \ USER \ AppData \ Local \ Android \ Sdk \ ndk-bundle \ toolchains; vous pouvez trouver le vôtre sous Fichier-> structure du projet-> SDK dans votre studio Android) et créez un dossier avec le nom qui apparaît comme manquant dans l'erreur, par exemple: si l'erreur est
Ensuite, créez un dossier avec le nom mipsel-linux-android
Inclure le contenu Accédez à nouveau au dossier Sdk \ ndk-bundle \ toolchains et ouvrez tout dossier qui s'y trouve déjà. Par exemple: Sdk \ ndk-bundle \ toolchains \ aarch64-linux-android-4.9 (dans mycase C: \ Users \ USER \ AppData \ Local \ Android \ Sdk \ ndk-bundle \ toolchains \ aarch64-linux-android-4.9) copiez le dossier préconstruit dans le dossier que nous avons créé à la dernière étape
Exécutez à nouveau le projet et cela fonctionnera
J'espère que ça aide!!
la source
Dans mon expérience limitée avec cette question, j'essaie de résoudre le problème en utilisant la méthode suivante:
1. Restez sur la version des outils de construction Android de la même manière que la version Gradle. Par exemple: si vous utilisez la version des outils de construction est 3.3.0, votre version gradle doit être 4.10.1. Vous pouvez référencer par le lien https://developer.android.com/studio/releases/gradle-plugin et chagne votre construire des outils et une version gradle dans votre AS (Fichier-> Structure du projet-> Projet)
2.Si la méthode 1 ne fonctionne pas, vous pouvez personnaliser la version de vos chaînes d'outils ndk pour résoudre le problème: comme télécharger ndk18 ou ndk16, définir le chemin ndk est votre AS (Fichier-> Structure du projet-> Emplacement du SDK-> Emplacement Android NDK)
la source
Accédez à
C:\Users\lalit\AppData\Local\Android\Sdk\ndk-bundle\toolchains
.Maintenant, trouvez le nom du dossier
aarch64-linux-android-4.9
et renommez-le enmips64el-linux-android
.Relancez l'application Android.
la source