Bitbucket Pipelines: No toolchains found in the NDK toolchains folder for ABI with prefix:...
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty{ height:90px;width:728px;box-sizing:border-box;
}
I am totally new to CI with Bitbucket Pipelines and was currently setting up pipeline with the help of this article. My builds are failing due to this error
"No toolchains found in the NDK toolchains folder for ABI with prefix: aarch64-linux-android"
Can anyone help me fixing this?
android docker android-ndk dockerfile bitbucket-pipelines
add a comment |
I am totally new to CI with Bitbucket Pipelines and was currently setting up pipeline with the help of this article. My builds are failing due to this error
"No toolchains found in the NDK toolchains folder for ABI with prefix: aarch64-linux-android"
Can anyone help me fixing this?
android docker android-ndk dockerfile bitbucket-pipelines
If you are using the unmodified Uber's docker, then you have NDK r12 there. Maybe your project relies on something else.
– Alex Cohn
May 22 '17 at 20:08
try using following method stackoverflow.com/a/54019946/7831470
– Sagar Giri
Jan 3 at 10:09
add a comment |
I am totally new to CI with Bitbucket Pipelines and was currently setting up pipeline with the help of this article. My builds are failing due to this error
"No toolchains found in the NDK toolchains folder for ABI with prefix: aarch64-linux-android"
Can anyone help me fixing this?
android docker android-ndk dockerfile bitbucket-pipelines
I am totally new to CI with Bitbucket Pipelines and was currently setting up pipeline with the help of this article. My builds are failing due to this error
"No toolchains found in the NDK toolchains folder for ABI with prefix: aarch64-linux-android"
Can anyone help me fixing this?
android docker android-ndk dockerfile bitbucket-pipelines
android docker android-ndk dockerfile bitbucket-pipelines
edited Jul 23 '17 at 6:27
StefMa
1,74631841
1,74631841
asked May 19 '17 at 21:55
Omkar AmberkarOmkar Amberkar
247415
247415
If you are using the unmodified Uber's docker, then you have NDK r12 there. Maybe your project relies on something else.
– Alex Cohn
May 22 '17 at 20:08
try using following method stackoverflow.com/a/54019946/7831470
– Sagar Giri
Jan 3 at 10:09
add a comment |
If you are using the unmodified Uber's docker, then you have NDK r12 there. Maybe your project relies on something else.
– Alex Cohn
May 22 '17 at 20:08
try using following method stackoverflow.com/a/54019946/7831470
– Sagar Giri
Jan 3 at 10:09
If you are using the unmodified Uber's docker, then you have NDK r12 there. Maybe your project relies on something else.
– Alex Cohn
May 22 '17 at 20:08
If you are using the unmodified Uber's docker, then you have NDK r12 there. Maybe your project relies on something else.
– Alex Cohn
May 22 '17 at 20:08
try using following method stackoverflow.com/a/54019946/7831470
– Sagar Giri
Jan 3 at 10:09
try using following method stackoverflow.com/a/54019946/7831470
– Sagar Giri
Jan 3 at 10:09
add a comment |
3 Answers
3
active
oldest
votes
Today I run into the same issue like you. I also followed the blog post you mentioned. Whatever. I'm happy to report you: I fixed it and found a "solution"! 😄
The funny part is: The solution so dumb as simple. The only thing you have to do is to unset
(or remove) the NDK environment variable (or directory).
The magic line is:
- unset ANDROID_NDK_HOME
Which means that my final bitbucket-pipelines.yml
looks like:
image: uber/android-build-environment:latest
pipelines:
default:
- step:
script:
- unset ANDROID_NDK_HOME
- ./ci/accept_android_license.sh
- ./gradlew :app:testDebugUnitTest
Why does it fix the issue?
To be honest. I don't know 😅. But I found out that the uber
s android-build-environment
install the NDK for you.
I found some answers - like here - to install the NDK separately again. But I thought about the following: Why the hell should I install/update the NDK if my project doesn't use it? So I tried to remove the NDK folder (which according to the Dockerfile
located at /usr/local/android-ndk
) and everything works 🎉.
Why unset
ting then?
You can't remove the android-ndk
dir because you don't have permission to do it. But you can delete the content from it. That is the reason why it worked with rm -rf /usr/local/android-ndk
. But then - with the setting of ANDROID_NDK_HOME
but without any content in there you got the error message (while building):
./gradlew :app:testDebugUnitTest
NDK is missing a "platforms" directory.
If you are using NDK, verify the ndk.dir is set to a valid NDK directory. It is currently set to /usr/local/android-ndk.
If you are not using NDK, unset the NDK variable from ANDROID_NDK_HOME or local.properties to remove this warning.
unset
the environment variable fix that warning as well.
Important:
Obviously that is not the best solution. If your App uses the NDK this solution will not help. To remove some environment variables "from a Docker image" in a CI
script is also not the best solution. Maybe the image need the variable later (don't know if that is possible in Docker... but you know what I mean 😉). But it will "temporary" fix the problem and since the android-build-environment
is unmaintained (not update since a year) anyway I would not put to much effort in fixing the image...
Note: The link to the
uber:android-build-environment
GitHub page refers to a single (currently the last) commit. If someone read that in the future the link is still active and correct but maybe themaster
branch have changed.
add a comment |
cd .../AndroidSdk/ndk-bundle/toolchains
ln -s aarch64-linux-android-4.9 mips64el-linux-android-4.9
ln -s arm-linux-androideabi-4.9 mipsel-linux-android-4.9
1
While this code snippet may solve the question, including an explanation really helps to improve the quality of your post. Remember that you are answering the question for readers in the future, and those people might not know the reasons for your code suggestion. Please also try not to crowd your code with explanatory comments, this reduces the readability of both the code and the explanations!
– Filnor
Mar 28 '18 at 15:36
add a comment |
You need to download android ndk
and install the standalone toolchain similar like this
$NDK/build/tools/make_standalone_toolchain.py
--arch arm --api 21 --install-dir /tmp/my-android-toolchain
Sometimes you have to create the environmental variable for the toolchain.
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f44079559%2fbitbucket-pipelines-no-toolchains-found-in-the-ndk-toolchains-folder-for-abi-wi%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
3 Answers
3
active
oldest
votes
3 Answers
3
active
oldest
votes
active
oldest
votes
active
oldest
votes
Today I run into the same issue like you. I also followed the blog post you mentioned. Whatever. I'm happy to report you: I fixed it and found a "solution"! 😄
The funny part is: The solution so dumb as simple. The only thing you have to do is to unset
(or remove) the NDK environment variable (or directory).
The magic line is:
- unset ANDROID_NDK_HOME
Which means that my final bitbucket-pipelines.yml
looks like:
image: uber/android-build-environment:latest
pipelines:
default:
- step:
script:
- unset ANDROID_NDK_HOME
- ./ci/accept_android_license.sh
- ./gradlew :app:testDebugUnitTest
Why does it fix the issue?
To be honest. I don't know 😅. But I found out that the uber
s android-build-environment
install the NDK for you.
I found some answers - like here - to install the NDK separately again. But I thought about the following: Why the hell should I install/update the NDK if my project doesn't use it? So I tried to remove the NDK folder (which according to the Dockerfile
located at /usr/local/android-ndk
) and everything works 🎉.
Why unset
ting then?
You can't remove the android-ndk
dir because you don't have permission to do it. But you can delete the content from it. That is the reason why it worked with rm -rf /usr/local/android-ndk
. But then - with the setting of ANDROID_NDK_HOME
but without any content in there you got the error message (while building):
./gradlew :app:testDebugUnitTest
NDK is missing a "platforms" directory.
If you are using NDK, verify the ndk.dir is set to a valid NDK directory. It is currently set to /usr/local/android-ndk.
If you are not using NDK, unset the NDK variable from ANDROID_NDK_HOME or local.properties to remove this warning.
unset
the environment variable fix that warning as well.
Important:
Obviously that is not the best solution. If your App uses the NDK this solution will not help. To remove some environment variables "from a Docker image" in a CI
script is also not the best solution. Maybe the image need the variable later (don't know if that is possible in Docker... but you know what I mean 😉). But it will "temporary" fix the problem and since the android-build-environment
is unmaintained (not update since a year) anyway I would not put to much effort in fixing the image...
Note: The link to the
uber:android-build-environment
GitHub page refers to a single (currently the last) commit. If someone read that in the future the link is still active and correct but maybe themaster
branch have changed.
add a comment |
Today I run into the same issue like you. I also followed the blog post you mentioned. Whatever. I'm happy to report you: I fixed it and found a "solution"! 😄
The funny part is: The solution so dumb as simple. The only thing you have to do is to unset
(or remove) the NDK environment variable (or directory).
The magic line is:
- unset ANDROID_NDK_HOME
Which means that my final bitbucket-pipelines.yml
looks like:
image: uber/android-build-environment:latest
pipelines:
default:
- step:
script:
- unset ANDROID_NDK_HOME
- ./ci/accept_android_license.sh
- ./gradlew :app:testDebugUnitTest
Why does it fix the issue?
To be honest. I don't know 😅. But I found out that the uber
s android-build-environment
install the NDK for you.
I found some answers - like here - to install the NDK separately again. But I thought about the following: Why the hell should I install/update the NDK if my project doesn't use it? So I tried to remove the NDK folder (which according to the Dockerfile
located at /usr/local/android-ndk
) and everything works 🎉.
Why unset
ting then?
You can't remove the android-ndk
dir because you don't have permission to do it. But you can delete the content from it. That is the reason why it worked with rm -rf /usr/local/android-ndk
. But then - with the setting of ANDROID_NDK_HOME
but without any content in there you got the error message (while building):
./gradlew :app:testDebugUnitTest
NDK is missing a "platforms" directory.
If you are using NDK, verify the ndk.dir is set to a valid NDK directory. It is currently set to /usr/local/android-ndk.
If you are not using NDK, unset the NDK variable from ANDROID_NDK_HOME or local.properties to remove this warning.
unset
the environment variable fix that warning as well.
Important:
Obviously that is not the best solution. If your App uses the NDK this solution will not help. To remove some environment variables "from a Docker image" in a CI
script is also not the best solution. Maybe the image need the variable later (don't know if that is possible in Docker... but you know what I mean 😉). But it will "temporary" fix the problem and since the android-build-environment
is unmaintained (not update since a year) anyway I would not put to much effort in fixing the image...
Note: The link to the
uber:android-build-environment
GitHub page refers to a single (currently the last) commit. If someone read that in the future the link is still active and correct but maybe themaster
branch have changed.
add a comment |
Today I run into the same issue like you. I also followed the blog post you mentioned. Whatever. I'm happy to report you: I fixed it and found a "solution"! 😄
The funny part is: The solution so dumb as simple. The only thing you have to do is to unset
(or remove) the NDK environment variable (or directory).
The magic line is:
- unset ANDROID_NDK_HOME
Which means that my final bitbucket-pipelines.yml
looks like:
image: uber/android-build-environment:latest
pipelines:
default:
- step:
script:
- unset ANDROID_NDK_HOME
- ./ci/accept_android_license.sh
- ./gradlew :app:testDebugUnitTest
Why does it fix the issue?
To be honest. I don't know 😅. But I found out that the uber
s android-build-environment
install the NDK for you.
I found some answers - like here - to install the NDK separately again. But I thought about the following: Why the hell should I install/update the NDK if my project doesn't use it? So I tried to remove the NDK folder (which according to the Dockerfile
located at /usr/local/android-ndk
) and everything works 🎉.
Why unset
ting then?
You can't remove the android-ndk
dir because you don't have permission to do it. But you can delete the content from it. That is the reason why it worked with rm -rf /usr/local/android-ndk
. But then - with the setting of ANDROID_NDK_HOME
but without any content in there you got the error message (while building):
./gradlew :app:testDebugUnitTest
NDK is missing a "platforms" directory.
If you are using NDK, verify the ndk.dir is set to a valid NDK directory. It is currently set to /usr/local/android-ndk.
If you are not using NDK, unset the NDK variable from ANDROID_NDK_HOME or local.properties to remove this warning.
unset
the environment variable fix that warning as well.
Important:
Obviously that is not the best solution. If your App uses the NDK this solution will not help. To remove some environment variables "from a Docker image" in a CI
script is also not the best solution. Maybe the image need the variable later (don't know if that is possible in Docker... but you know what I mean 😉). But it will "temporary" fix the problem and since the android-build-environment
is unmaintained (not update since a year) anyway I would not put to much effort in fixing the image...
Note: The link to the
uber:android-build-environment
GitHub page refers to a single (currently the last) commit. If someone read that in the future the link is still active and correct but maybe themaster
branch have changed.
Today I run into the same issue like you. I also followed the blog post you mentioned. Whatever. I'm happy to report you: I fixed it and found a "solution"! 😄
The funny part is: The solution so dumb as simple. The only thing you have to do is to unset
(or remove) the NDK environment variable (or directory).
The magic line is:
- unset ANDROID_NDK_HOME
Which means that my final bitbucket-pipelines.yml
looks like:
image: uber/android-build-environment:latest
pipelines:
default:
- step:
script:
- unset ANDROID_NDK_HOME
- ./ci/accept_android_license.sh
- ./gradlew :app:testDebugUnitTest
Why does it fix the issue?
To be honest. I don't know 😅. But I found out that the uber
s android-build-environment
install the NDK for you.
I found some answers - like here - to install the NDK separately again. But I thought about the following: Why the hell should I install/update the NDK if my project doesn't use it? So I tried to remove the NDK folder (which according to the Dockerfile
located at /usr/local/android-ndk
) and everything works 🎉.
Why unset
ting then?
You can't remove the android-ndk
dir because you don't have permission to do it. But you can delete the content from it. That is the reason why it worked with rm -rf /usr/local/android-ndk
. But then - with the setting of ANDROID_NDK_HOME
but without any content in there you got the error message (while building):
./gradlew :app:testDebugUnitTest
NDK is missing a "platforms" directory.
If you are using NDK, verify the ndk.dir is set to a valid NDK directory. It is currently set to /usr/local/android-ndk.
If you are not using NDK, unset the NDK variable from ANDROID_NDK_HOME or local.properties to remove this warning.
unset
the environment variable fix that warning as well.
Important:
Obviously that is not the best solution. If your App uses the NDK this solution will not help. To remove some environment variables "from a Docker image" in a CI
script is also not the best solution. Maybe the image need the variable later (don't know if that is possible in Docker... but you know what I mean 😉). But it will "temporary" fix the problem and since the android-build-environment
is unmaintained (not update since a year) anyway I would not put to much effort in fixing the image...
Note: The link to the
uber:android-build-environment
GitHub page refers to a single (currently the last) commit. If someone read that in the future the link is still active and correct but maybe themaster
branch have changed.
answered Jul 22 '17 at 7:27
StefMaStefMa
1,74631841
1,74631841
add a comment |
add a comment |
cd .../AndroidSdk/ndk-bundle/toolchains
ln -s aarch64-linux-android-4.9 mips64el-linux-android-4.9
ln -s arm-linux-androideabi-4.9 mipsel-linux-android-4.9
1
While this code snippet may solve the question, including an explanation really helps to improve the quality of your post. Remember that you are answering the question for readers in the future, and those people might not know the reasons for your code suggestion. Please also try not to crowd your code with explanatory comments, this reduces the readability of both the code and the explanations!
– Filnor
Mar 28 '18 at 15:36
add a comment |
cd .../AndroidSdk/ndk-bundle/toolchains
ln -s aarch64-linux-android-4.9 mips64el-linux-android-4.9
ln -s arm-linux-androideabi-4.9 mipsel-linux-android-4.9
1
While this code snippet may solve the question, including an explanation really helps to improve the quality of your post. Remember that you are answering the question for readers in the future, and those people might not know the reasons for your code suggestion. Please also try not to crowd your code with explanatory comments, this reduces the readability of both the code and the explanations!
– Filnor
Mar 28 '18 at 15:36
add a comment |
cd .../AndroidSdk/ndk-bundle/toolchains
ln -s aarch64-linux-android-4.9 mips64el-linux-android-4.9
ln -s arm-linux-androideabi-4.9 mipsel-linux-android-4.9
cd .../AndroidSdk/ndk-bundle/toolchains
ln -s aarch64-linux-android-4.9 mips64el-linux-android-4.9
ln -s arm-linux-androideabi-4.9 mipsel-linux-android-4.9
edited Mar 28 '18 at 15:37
rollstuhlfahrer
3,26981831
3,26981831
answered Mar 28 '18 at 15:30
chinachina
411
411
1
While this code snippet may solve the question, including an explanation really helps to improve the quality of your post. Remember that you are answering the question for readers in the future, and those people might not know the reasons for your code suggestion. Please also try not to crowd your code with explanatory comments, this reduces the readability of both the code and the explanations!
– Filnor
Mar 28 '18 at 15:36
add a comment |
1
While this code snippet may solve the question, including an explanation really helps to improve the quality of your post. Remember that you are answering the question for readers in the future, and those people might not know the reasons for your code suggestion. Please also try not to crowd your code with explanatory comments, this reduces the readability of both the code and the explanations!
– Filnor
Mar 28 '18 at 15:36
1
1
While this code snippet may solve the question, including an explanation really helps to improve the quality of your post. Remember that you are answering the question for readers in the future, and those people might not know the reasons for your code suggestion. Please also try not to crowd your code with explanatory comments, this reduces the readability of both the code and the explanations!
– Filnor
Mar 28 '18 at 15:36
While this code snippet may solve the question, including an explanation really helps to improve the quality of your post. Remember that you are answering the question for readers in the future, and those people might not know the reasons for your code suggestion. Please also try not to crowd your code with explanatory comments, this reduces the readability of both the code and the explanations!
– Filnor
Mar 28 '18 at 15:36
add a comment |
You need to download android ndk
and install the standalone toolchain similar like this
$NDK/build/tools/make_standalone_toolchain.py
--arch arm --api 21 --install-dir /tmp/my-android-toolchain
Sometimes you have to create the environmental variable for the toolchain.
add a comment |
You need to download android ndk
and install the standalone toolchain similar like this
$NDK/build/tools/make_standalone_toolchain.py
--arch arm --api 21 --install-dir /tmp/my-android-toolchain
Sometimes you have to create the environmental variable for the toolchain.
add a comment |
You need to download android ndk
and install the standalone toolchain similar like this
$NDK/build/tools/make_standalone_toolchain.py
--arch arm --api 21 --install-dir /tmp/my-android-toolchain
Sometimes you have to create the environmental variable for the toolchain.
You need to download android ndk
and install the standalone toolchain similar like this
$NDK/build/tools/make_standalone_toolchain.py
--arch arm --api 21 --install-dir /tmp/my-android-toolchain
Sometimes you have to create the environmental variable for the toolchain.
answered May 22 '17 at 17:30
Armen AvetisyanArmen Avetisyan
707419
707419
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f44079559%2fbitbucket-pipelines-no-toolchains-found-in-the-ndk-toolchains-folder-for-abi-wi%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
If you are using the unmodified Uber's docker, then you have NDK r12 there. Maybe your project relies on something else.
– Alex Cohn
May 22 '17 at 20:08
try using following method stackoverflow.com/a/54019946/7831470
– Sagar Giri
Jan 3 at 10:09