Comments (85)
Find your own local android-sdk, if you download the relevant sdk of ndk, there will be a folder called "ndk-bundle"
There is a folder called "toolchains" inside.
We noticed that there are no mips64el related files inside.
The solution is as follows:
Click here to download the NDK package separately through the browser.
After unzipping, open the "toolchains" folder, compare it with the android-sdk->ndk-bundle->toolchains folder, find the missing folder, copy the past
3. Recompile, the problem is solved.
Hope it helps you mate
from filament.
This is a problem with an old version of the Android Gradle plugin that only surfaced recently due to mips support being removed from the Android SDK. As stated above, it has nothing to do with the filament project.
Solution
Without downloading, updating, or copying anything, you can "fix" the error by simply creating an empty directory where the old version expects it.
Linux
mkdir -p $ANDROID_HOME/ndk-bundle/toolchains/mips64el-linux-android/prebuilt/linux-x86_64
MacOS
mkdir -p $ANDROID_HOME/ndk-bundle/toolchains/mips64el-linux-android/prebuilt/darwin-x86_64
Windows (thanks @dan-r95)
mkdir %ANDROID_HOME%\ndk-bundle\toolchains\mips64el-linux-android\prebuilt\windows-x86_64
The ANDROID_HOME
environment variable points to the the root of the Android SDK installation.
from filament.
I had the same problem (a very unexpected "No toolchains found in the NDK toolchains folder for ABI with prefix: mips64el-linux-android") when I opened an old project, and fixed it by updating some build settings:
diff --git a/AndroidStudioHolder/app/build.gradle b/AndroidStudioHolder/app/build.gradle
index c42f8710..8bc8b1aa 100644
--- a/AndroidStudioHolder/app/build.gradle
+++ b/AndroidStudioHolder/app/build.gradle
@@ -2,7 +2,7 @@ apply plugin: 'com.android.application'
android {
compileSdkVersion 26
- buildToolsVersion '26.0.2'
+ buildToolsVersion '28.0.2'
defaultConfig {
applicationId "com.digium.SwitchvoxSoftphone"
diff --git a/AndroidStudioHolder/build.gradle b/AndroidStudioHolder/build.gradle
index 70e20276..8295018f 100644
--- a/AndroidStudioHolder/build.gradle
+++ b/AndroidStudioHolder/build.gradle
@@ -6,7 +6,7 @@ buildscript {
jcenter()
}
dependencies {
- classpath 'com.android.tools.build:gradle:3.0.1'
+ classpath 'com.android.tools.build:gradle:3.3.0-alpha05'
classpath 'com.google.gms:google-services:3.1.0'
// NOTE: Do not place your application dependencies here; they belong
diff --git a/AndroidStudioHolder/gradle/wrapper/gradle-wrapper.properties b/AndroidStudioHolder/gradle/wrapper/gradle-wrapper.properties
index 790c9505..4e61a125 100644
--- a/AndroidStudioHolder/gradle/wrapper/gradle-wrapper.properties
+++ b/AndroidStudioHolder/gradle/wrapper/gradle-wrapper.properties
@@ -1,6 +1,6 @@
-#Tue Sep 05 11:15:44 PDT 2017
+#Mon Aug 13 15:32:30 PDT 2018
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-4.9-all.zip
from filament.
Linux & 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
from filament.
for me, upgrade the Android Gradle plugin version to 3.1.3+ works.
from filament.
@AndroidDeveloperLB, I had the same problem with another project. I followed the instructions from Android Plugin for Gradle release notes; you may try to change your Project Structure settings as (check bold for the changes):
- Gradle version: 4.4
- Android Plugin Version: 3.1.0
- Android Plugin Repository: jcenter, google()
- Default Library Repository: jcenter
I resync'ed Gradle then rebuilt the project successfully.
In time, here are my Android Studio details:
Android Studio 3.1.4
Build #AI-173.4907809, built on July 23, 2018
JRE: 1.8.0_152-release-1024-b01 x86_64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
Mac OS X 10.13.6
EDIT: If prompted to upgrade Gradle, click Upgrade button.
from filament.
@romainguy You are correct. I was sure it's just NDK that's needed. Seems it's a lot more.
Closing this as I don't have time for this. Sorry.
Thank you for the good work.
from filament.
@romainguy So... please remove it from the sample too :)
from filament.
Isn't this enough:
?
from filament.
@AndroidDeveloperLB It seems like the old version of android gradle plugin(<3.3.+) was trying to access mips toolchain without checking if it exists. Upgrade the plugin version to 3.3-alpha may adopt to your r18-rc NDK toolchains(as @banshee posted).
from filament.
I had the same problem with a tutorial from Codelabs..
When I imported the project to Android Studio 3.14 & 3.2
I got..."No toolchains found in the NDK toolchains folder for ABI with prefix: mips64el
Tried lots of ways and found the easy way.
Just uninstall NDK tools from SDK tools. Uncheck and click ok
Sync project with Gradle files.
It will then bring up update box to update Gradle..update.
Wait to update.
Done.
I actually got this answer from a Chinese site, thankfully Google does great translation.
from filament.
@romainguy Seems "mips64el-linux-android" is missing because it got deprecated:
https://issuetracker.google.com/issues/112810603
https://issuetracker.google.com/issues/112779429
https://developer.android.com/ndk/guides/abis#sa
Note: Historically the NDK supported 32-bit and 64-bit MIPS, but support was removed in NDK r17.
Please avoid using unsupported architectures.
@stark25795 The latest version doesn't have it, because of what I wrote above:
from filament.
For those who don't need NDK support, uninstall NDK fixes it without the need to upgrade plugin versions.
from filament.
I think I figured it out. See below.
Uncheck NDK. Then Apply. No longer get the missing NDK toolchains error. Now I am missing a library, but that is a separate issue.
from filament.
I just wanted to try out the sample, but I got this error:
I had the same problem with a tutorial from Codelabs..
When I imported the project to Android Studio 3.14 & 3.2
I got..."No toolchains found in the NDK toolchains folder for ABI with prefix: mips64elTried lots of ways and found the easy way.
Just uninstall NDK tools from SDK tools. Uncheck and click ok
Sync project with Gradle files.
It will then bring up update box to update Gradle..update.
Wait to update.
Done.
I actually got this answer from a Chinese site, thankfully Google does great translation.
This is the solution guys it just helped me out thanks man.@RichieDevereux
from filament.
It should be. I have no idea what the problem is here, we don't even support the MIPS ABI (and it's not part of the NDK anymore I believe).
from filament.
So how did I get this error (look at first post) ?
from filament.
Btw you don't really need to find the actual mips64el-linux-android-4.9 mipsel-linux-android-4.9 contents. You can just create a folder with the same name and copy contents from another architecture.
from filament.
This is a very annoying problem with an old version of the Android Gradle plugin that only surfaced recently due to mips support being removed from the Android SDK. As stated above, it has nothing to do with the filament project.
Without downloading or copying anything, you can "fix" the error by simply creating an empty directory where the older version expects it:
mkdir -p $ANDROID_HOME/ndk-bundle/toolchains/mips64el-linux-android/prebuilt/linux-x86_64
Obviously,
$ANDROID_HOME
points to the root of the Android SDK installation here. If you are using MacOS, replacelinux-x86_64
withdarwin-x86_64
in the command above. On Windows usewindows-x86_64
.
For windows, I had to change the syntax to:
mkdir %ANDROID_HOME%\ndk-bundle\toolchains\mips64el-linux-android\prebuilt\linux-x86_64
from filament.
I am using Windows, and creating the empty folders fixed the problem.
Exactly I created the following directories: \mips64el-linux-android\prebuilt\windows-x86_64
Under my $ANDROID_HOME which in my case is C:\Users\myusername\AppData\Local\Android\sdk\ndk-bundle\toolchains
I run the application again and this time no more errors.
Thanks for the help
from filament.
This worked for me. Thanks @petru-sabadac :)
from filament.
That's why we don't support MIPS, because it's been deprecated/removed from the NDK
from filament.
For me, just remove tick NUK in SDL tools resolved the problem...
from filament.
i think i fixed the problem. i just went to the website to download the ndk and clicked download older version.
and i pressed the second download on there (december 2017)
in that download are the mipsel and mip64el folders you want.
after you copied them in your android studio folder i did a gradle sync and the errors went away, after that android studio will ask you to update somthing (in my case) DON'T UPDATE THAT!!! i did it and now i'm stuck with other errors
from filament.
I encountered this issue with generated project files from cocos2dx.
Here's what worked for me
-
Change this in build.gradle:
from:
classpath 'com.android.tools.build:gradle:3.0.0'
to:
classpath 'com.android.tools.build:gradle:3.2.1' -
Overwriting gradle* from another working project
from filament.
It's not in the samples.
from filament.
Btw you don't really need to find the actual mips64el-linux-android-4.9 mipsel-linux-android-4.9 contents. You can just create a folder with the same name and copy contents from another architecture.
This worked for me. Thanks @ktiniatros
from filament.
@friederbluemle this works for me. Thanks!
from filament.
This worked for me. Thanks @petru-sabadac
from filament.
@petru-sabadac this works for me. Thanks!
from filament.
@shoarma You might have missed the message I posted above - there is no need to download or install anything!
from filament.
Thanks to all who worked this out! Adding the empty mips architecture files worked for m.
from filament.
If you aren't going to use C/C++ then you won't need the NDK.
Game developers use it.
I have it uninstalled.
from filament.
This comment was from the original reporter. Also note that most of the comments here have nothing to do with this project.
from filament.
Linux & 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
its worked! thanks
from filament.
buildscript {
repositories {
google()
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.2.0'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
============= Above code worked for me ===============
from filament.
It opens properly for me on several machines. Do you have an NDK properly installed and setup?
from filament.
Is it possible that it's because I'm using Windows OS?
Or that I have AMD CPU ?
from filament.
Those have nothing to do with MIPS so I doubt they're related.
BTW did you follow the other instructions in the README and built the native libraries with cmake already? These are necessary before you can build the AAR.
from filament.
So it's a relatively new issue
from filament.
@stark25795 it works for me
from filament.
@chris118 What worked? Which sample worked for you?
I think I tried them all. What did you do?
from filament.
On which sample?
I tried now on "hello-triangle", "image-based-lighting", and "lit-cube" , and all show this error now:
SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME environment variable.
Thing is, it points to a correct place, so it should be fine...
from filament.
@AndroidDeveloperLB You need a local.properties
in android/filament-android
too.
from filament.
@romainguy It doesn't let me open the project as one with all 3 samples with filament-android
, so I can't have it all :
Also, I think the samples don't use this, no? Should use the gradle repository instead, no?
I now tried to open each of them separately, and it still doesn't help. Tells me "module not specified", but I can't even choose the module :
from filament.
filament-android
is a library required by each sample. Just copy your local.properties in filament-android
then open a sample.
from filament.
@romainguy Copy it? Copy it to where?
As I've shown now, when I open the sample after I've opened the filament-android
, it doesn't let me run anything, as it can't find the module to run. Look:
from filament.
Copy that file inside the filament-android directory.
from filament.
Copy it to where?
The content seems fine on both projects.
It leads to a correct path.
Look at the screenshots.
from filament.
Uninstalling the NDK worked for me ( had the problem from Unity )
from filament.
@stark25795 your solution was great. Thanks, buddy!
from filament.
For those who don't need NDK support, uninstall NDK fixes it without the need to upgrade plugin versions.
@edisonw, thanks!
from filament.
I solved this!miss mips64el-linux-android-4.9 mipsel-linux-android-4.9
from filament.
I've been working on getting this solved for a good few days now. I got it working on android after I broke it trying to use an npm package called 'react-native-splash-screen'.
Upgrading my gradle version in the top-level project build gradle to version 3.1.3 solved the problem in my situation. I should mention that before I tried that, I deleted the android folder and rebuilt it because I kept getting some weird errors with 'react-native-firebase' that I had installed and uninstalled earlier.
from filament.
I have been battling this error for a week now. Could you elaborate on how exactly you upgraded your gradle version. Pretty new in Android Studio so any extra clarity is much appreciated.
from filament.
@landon-hillyard I have tried so many things I can't even remember how I got it to work.
Things I've tried:
- Delete android and node modules folder, run 'npm install' and 'react-native upgrade' to rebuild those folders.
- Go into 'Project Structure' (top right, folder icon with three blue squares) and then go to 'project' then put in your grade version and android plugin version.
- Check the top level build.gradle that the version is 3.1.3 like I said in my comment above yours.
- Check around in your other build.gradle and settings.gradle files to make sure you don't have any version conflicts.
This is a really weird bug and I'm by no means an expert. Took me three days to figure this one out. As I said before I'm working on a React Native project on iOS and Android. The reason why I had to mess with android studio at all was to add the splash screen and app icons. I also had some naming conflicts with 'rn-bridge', however, I want to keep things on topic for this thread.
from filament.
@SrgGroot Thanks for your suggestions. Attached are the changes I made. No luck. Still have.
"No toolchains found in the NDK toolchains folder for ABI with prefix: mips64el-linux-android"
If there are any other suggestions or insights, any help is appreciated.
Should I manually change the version in my build.gradle file?
from filament.
from filament.
Tried updating the classpath. Got this result.
Sorry where are the android and node_modules directories?
from filament.
Update the android tools version in project-level build.gradle
.
from filament.
For those of you using stark's solution of downloading an older NDK and merging the two versions, the one you will need is 16c.
from filament.
Try to update the studio..If u r trying to upload old project then update the gradle as manually to the latest
from filament.
tried what @MNGsulochana said and yeah AS version 3.2 is working
from filament.
If you Found error 👍
No toolchains found in the NDK toolchains folder for ABI with prefix: mipsel-linux-android
Then go to gradle-wrapper.properties and change distibutionUrl to letest gradel
i change
distributionUrl=https://services.gradle.org/distributions/gradle-4.6-all.zip
to
distributionUrl=https://services.gradle.org/distributions/gradle-4.9-all.zip
from filament.
Thank you! It works finally. Adding empty files as @friederbluemle mentioned.
from filament.
Conversation with authot of SDL2:
I:
Hello.
I try use it for android.
And SDL require mips64el-linux-android and mipsel-linux-android from NDK.
But NDK now have not this file.
From NDK developers:
Note: Historically the NDK supported 32-bit and 64-bit MIPS, but support was removed in NDK r17.
Can you update your source code for android?
Bye.
Sam Lantinga :
Yes, this is fixed for the 2.0.9 release, which will hopefully happen on Monday or Tuesday.
from filament.
This is the solution guys it just helped me out thanks man.@RichieDevereux
I tried lots of peoples answers and ended up sorting it myself after long searching.
Frustrating when you are doing tutorials. I've had a few problems with Codelabs tuts and find a solution somehow. Il don't think I will ever need the NDK so it's gone.
Good you sorted it out.
from filament.
Is it possible that it's because I'm using Windows OS?
Or that I have AMD CPU ?
even though I compile it on ubuntu 1604 ,it still report that problem!
from filament.
@romainguy You are correct. I was sure it's just NDK that's needed. Seems it's a lot more.
Closing this as I don't have time for this. Sorry.
Thank you for the good work.
Worst argument I have ever seen to close an issue
from filament.
hi tried fix some problem for this error if someone try it i commit it and tell me if it is working and for the record uninstall the ndk dose the job ask of u for some update
from filament.
I am using Windows, and creating the empty folders fixed the problem.
Exactly I created the following directories: \mips64el-linux-android\prebuilt\windows-x86_64
Under my $ANDROID_HOME which in my case is C:\Users\myusername\AppData\Local\Android\sdk\ndk-bundle\toolchains
I run the application again and this time no more errors.
Thanks for the help
I still got an issue with this. It says:
* What went wrong:
A problem occurred configuring project ':filament-android'.
> SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME environment variable.
However, all folders are actually positioned fine:
How come?
from filament.
If your old project didn't use NDK, just remove it from Android SDK Manager and reopen your project again. It work for me.
from filament.
@kjanard Which old project? I just cloned the repository here, and wanted to try out one of the samples (the triangle in this case).
And what do you mean by "remove it" ? Wouldn't this mean I won't be able to build C/C++ code in all projects?
from filament.
@AndroidDeveloperLB Sorry, my mistake. I didn't read an issue carefully and clearly. Your post just popped up when I search about non-ndk project.
from filament.
Thanks @petru-sabadac :) It worked for me with similar steps in Windows 10 as follows.
Android Studio 3.2.1
Build #AI-181.5540.7.32.5056338, built on October 8, 2018
JRE: 1.8.0_152-release-1136-b06 amd64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
Windows 10 10.0
Right click the "Start Icon" of Windows 10 and select "Command Prompt (Admin)", and then
mklink /D mips64el-linux-android aarch64-linux-android-4.9
mklink /D mipsel-linux-android arm-linux-androideabi-4.9
from filament.
from filament.
I just unchecked the NDK from SDK Tools and it worked for me... I think there is no need yet for NDK.
from filament.
I just unchecked the NDK from SDK Tools and it worked for me... I think there is no need yet for NDK.
there is if you design games.
from filament.
i face same problem then i upgrade gradle version 3.0.1 to classpath 'com.android.tools.build:gradle:3.2.1' it work for me..
from filament.
The issue can be resolved by downloading an older version of the NDK (14b) and going to Android Studio to File | Project Structure and selecting it.
from filament.
This thread just keeps growing and growing and the issue is completely unrelated to the project it's in. There are obviously multiple solutions to get rid of the error, but there is one fix that does not involve downloading or copying anything that can be seen by scrolling up to #15 (comment)
I wish there was a way to "pin" a comment and/or prevent people from commenting "me too"... Maybe this thread should be closed with a final conclusion?
from filament.
i haved the same problem in cordova.
You need to edit the gradle version to the latest in this files.
platforms/android/app/build.gradle platforms/android/cordova/lib/builders/GradleBuilder.js platforms/android/cordova/lib/builders/StudioBuilder.js
In build.gradle find this part of the code.
task wrapper(type: Wrapper) { gradleVersion = '4.10.2' }
In GradleBuilder.js find this part of the code.
var distributionUrl = process.env['CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL'] || 'https\\://services.gradle.org/distributions/gradle-4.10.2-all.zip';
In StudioBuilder.js find this part of the code.
var distributionUrl = process.env['CORDOVA_ANDROID_GRADLE_DISTRIBUTION_URL'] || 'https\\://services.gradle.org/distributions/gradle-4.10.2-all.zip';
from filament.
Nothing here worked for me, but here are the steps I followed to fix it on my end (while trying to build the SimpleCalc project from Codelabs):
- Tap the Shift key twice, click Include non-project items, type "SDK", and scroll until you find SDK Manager. Click it.
- Go to the SDK Tools tab.
- Uncheck NDK and click Apply.
- Exit the SDK Manager when this is finished.
- Expand the Gradle Scripts directory of your project.
- Double-click on build.gradle to open a script that's executed to sync your project.
- Make sure your
classpath
is defined as follows:classpath 'com.android.tools.build:gradle:3.2.1'
(or, if 3.2.1 is not the latest Gradle version when you're reading this, replace it accordingly). - Find the
repositories
section of the script underbuildscript
, and make sure you addgoogle()
on a new line within the curly braces, if it does not already exist. - Go to File > Sync Project with Gradle Files.
Then, Build > Make Project. If all went well, this should work for you.
from filament.
I'm still facing same issue since a long time.
Please Help. I've tried every solution above.
It still showing "No toolchains found in the NDK toolchains folder for ABI with prefix: mips64el-linux-android"
from filament.
Notice the file android-ndk-r17-beta2/toolchains/mips64el-linux-android-4.9/prebuilt/darwin-x86_64/NOTICE-MIPS64
. The content of the file is below.
This mips64el-linux-android-4.9 directory exists to make the NDK compatible with the Android
SDK's Gradle plugin, version 3.0.1 and earlier, which expects the NDK
to have a MIPS64 toolchain directory.
So, i can say, using Android SDK's Gradle plugin above 3.0.1, or create even a directory marked with 'mipsel' and 'mips64el', can both resolve the problem. The latter method is below.
cd <path-to-ndk>
OS_=$(uname -s | tr [A-Z] [a-z])
mkdir -p toolchains/mipsel-linux-android-4.9/prebuilt/${OS_}-x86_64
touch toolchains/mipsel-linux-android-4.9/prebuilt/${OS_}-x86_64/NOTICE-MIPS
mkdir -p toolchains/mips64el-linux-android-4.9/prebuilt/${OS_}-x86_64
touch toolchains/mips64el-linux-android-4.9/prebuilt/${OS_}-x86_64/NOTICE-MIPS64
from filament.
Related Issues (20)
- Local light probe HOT 4
- iOS 17.1.2 render error use Metal HOT 2
- Android `asyncCancelLoad` causing crash HOT 5
- Issue with PixelBufferDescriptor on Metal HOT 1
- The clipSpaceTransform matrix cannot fully transform the vertex position HOT 1
- Clip space transform cannot affect the Z component HOT 1
- Material with BlendingMode::FADE is always influenced by the camera's depth of field effects. HOT 3
- How can the gl_position be modified HOT 3
- crash on iOS with destroy _resourceLoader
- Some GLTF files do not render on Vulkan HOT 6
- Get parameter value of material from gltfio HOT 5
- `TransparencyMode::TWO_PASSES_ONE_SIDE` showing back face for certain asset HOT 10
- How does the ModelViewer rotate 90 degrees HOT 1
- WebGL in v1.51.0 is broken
- Are there any plans to support gltf extensions in 3dtiles 2.0? HOT 1
- How can I pass a java HardwareBuffer to Texture on android platform?
- core dumped gltf_viewer HOT 5
- VulkanDriver always reports FEATURE_LEVEL_1 HOT 2
- crash on ios with _resourceLoader->loadResources(_asset);
- No point or spot light shadows on the first rendered frame HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from filament.