-
Notifications
You must be signed in to change notification settings - Fork 25
no NDK arm-linux-androideabi-gcc on $PATH at (eval 10) line 124. #105
Comments
Seems you got this case:
Source: https://github.com/openssl/openssl/blob/master/NOTES-Android.md That is seems why Try to comment or remove line Before: executeConfigure() {
this.clean();
var ndk = new NDK();
// Seems `-D__ANDROID_API__` not needed. See: #{@sources}/NOTES.ANDROID
var cmd = `
${this.options}
./Configure
// -D__ANDROID_API__=${ndk.api} <<<<<<<<<<<<< THIS LINE IS NOW COMMENTED.
--prefix=${this.paths.installs}
`;
if (this.arch.name == Archs.arm.name) {
cmd = `${cmd} android-arm`;
} else if (this.arch.name == Archs.arm64.name) {
cmd = `${cmd} android-arm64`;
} else if (this.arch.name == Archs.x86.name) {
cmd = `${cmd} android-x86`;
} else if (this.arch.name == Archs.x86_64.name) {
cmd = `${cmd} android-x86_64`;
}
this.executeCommands(`cd ${this.paths.sources} && ${cmd}`);
} Then execute: |
btw. Similar issue: openssl/openssl#11192 Maybe you have environment variable "CC" set somewhere? |
btw: Another similar issue: openssl/openssl#8941 |
Unfortunately, neither of it works. |
OK. What command cd ToolChain/Sources/ssl/
perl configdata.pm --dump |
kylewong@KyleWongs-MacBook-Pro ssl % perl configdata.pm --dump |
Hm. The file Well. If the commands below not working, then it is an issue of SSL. Seems would be more effective to ask them as well: https://github.com/openssl/openssl/issues. cd ToolChain/Sources/ssl
git clean --quiet -f -X
git clean --quiet -f -x -d
export ANDROID_NDK_HOME=/usr/local/ndk/21.3.6528147
export ANDROID_NDK_ROOT=/usr/local/ndk/21.3.6528147
PATH=$ANDROID_NDK_ROOT/toolchains/llvm/prebuilt/darwin-x86_64/bin:$ANDROID_NDK_ROOT/toolchains/aarch64-linux-android-4.9/prebuilt/darwin-x86_64/bin:$PATH
./Configure android-arm64 -D__ANDROID_API__=29
make SHLIB_VERSION_NUMBER= SHLIB_EXT=.so Build commands taken from: https://github.com/openssl/openssl/blob/master/NOTES-Android.md |
I ran into the same issue locally and I found out that it only happens when PATH=/usr/local/ndk/21.3.6528147/toolchains/llvm/prebuilt/darwin-x86_64/bin:$PATH
./Configure android-arm -D__ANDROID_API__=21
# Failure! build file wasn't produced.
# Please read INSTALL and associated NOTES files. You may also have to look over
# your available compiler tool chain or change your configuration.
# no NDK arm-linux-androideabi-gcc on $PATH at (eval 10) line 124. # configures successfully
PATH=/Users/username/Library/Android/sdk/ndk/21.3.6528147/toolchains/llvm/prebuilt/darwin-x86_64/bin:$PATH \
./Configure -D__ANDROID_API__=21 android-arm I used this commit to workaround it locally. I can open a pr if this makes sense for you as well. |
Interesting. Thank you for the figuring out this issue! The whole idea of NDK symbolic link – is to have "similar path on user side" in "umbrella header" when setting up I will try to use your @michaelknoch commit to make two separate variables for NDK path: one will be used during build time (non symlinked) and another will be used when packing toolchain for distribution. |
Maybe the issue is solved in release https://github.com/vgorloff/swift-everywhere-toolchain/releases/tag/1.0.68. In this release the non-symlinked (absolute paths) to NDK tools were used. |
@vgorloff
Thanks for your job.
When running "node main.js bootstrap", I met error here:
arm-linux-androideabi-gcc indeed doesn't exist in the ndk.
How to resolve this issue?
The text was updated successfully, but these errors were encountered: