Attention | Topic was automatically imported from the old Question2Answer platform. | |
Asked By | qaqaforum |
Hello!
I compile export template for android with module AdMob (enter link description here) for Godot 2.1 (Latest commit e898b0a on 16 Jan)
Win 10 X64, VS2015, NDK r19c X86_64
Compile for armv7
scons platform=android target=release
[ 97%] ←[91mLinking Shared Library ←[95m==> ←[93mbin\libgodot.android.opt.armv7.
neon.so←[0m
[100%] progress_finish(["progress_finish"], [])
[100%] scons: done building targets.
- succes
Compile for arm64
scons platform=android target=release android_arch=arm64v8
[ 97%] <[91mLinking Shared Library <[95m==> <[93mbin\libgodot.android.opt.armv8.
so<[0m
=====
D:\android\ndk/toolchains/aarch64-linux-android-4.9/prebuilt/windows-x86_64/lib/
gcc/aarch64-linux-android/4.9.x/../../../../aarch64-linux-android/bin\ld: cannot
find crtbegin_so.o: No such file or directory
D:\android\ndk/toolchains/aarch64-linux-android-4.9/prebuilt/windows-x86_64/lib/
gcc/aarch64-linux-android/4.9.x/../../../../aarch64-linux-android/bin\ld: cannot
find -lOpenSLES
D:\android\ndk/toolchains/aarch64-linux-android-4.9/prebuilt/windows-x86_64/lib/
gcc/aarch64-linux-android/4.9.x/../../../../aarch64-linux-android/bin\ld: cannot
find -lEGL
D:\android\ndk/toolchains/aarch64-linux-android-4.9/prebuilt/windows-x86_64/lib/
gcc/aarch64-linux-android/4.9.x/../../../../aarch64-linux-android/bin\ld: cannot
find -lOpenSLES
D:\android\ndk/toolchains/aarch64-linux-android-4.9/prebuilt/windows-x86_64/lib/
gcc/aarch64-linux-android/4.9.x/../../../../aarch64-linux-android/bin\ld: cannot
find -landroid
D:\android\ndk/toolchains/aarch64-linux-android-4.9/prebuilt/windows-x86_64/lib/
gcc/aarch64-linux-android/4.9.x/../../../../aarch64-linux-android/bin\ld: cannot
find -llog
D:\android\ndk/toolchains/aarch64-linux-android-4.9/prebuilt/windows-x86_64/lib/
gcc/aarch64-linux-android/4.9.x/../../../../aarch64-linux-android/bin\ld: cannot
find -lGLESv1_CM
D:\android\ndk/toolchains/aarch64-linux-android-4.9/prebuilt/windows-x86_64/lib/
gcc/aarch64-linux-android/4.9.x/../../../../aarch64-linux-android/bin\ld: cannot
find -lGLESv2
D:\android\ndk/toolchains/aarch64-linux-android-4.9/prebuilt/windows-x86_64/lib/
gcc/aarch64-linux-android/4.9.x/../../../../aarch64-linux-android/bin\ld: cannot
find -lz
D:\android\ndk/toolchains/aarch64-linux-android-4.9/prebuilt/windows-x86_64/lib/
gcc/aarch64-linux-android/4.9.x/../../../../aarch64-linux-android/bin\ld: cannot
find -lstdc++
D:\android\ndk/toolchains/aarch64-linux-android-4.9/prebuilt/windows-x86_64/lib/
gcc/aarch64-linux-android/4.9.x/../../../../aarch64-linux-android/bin\ld: cannot
find -lm
D:\android\ndk/toolchains/aarch64-linux-android-4.9/prebuilt/windows-x86_64/lib/
gcc/aarch64-linux-android/4.9.x/../../../../aarch64-linux-android/bin\ld: cannot
find -ldl
D:\android\ndk/toolchains/aarch64-linux-android-4.9/prebuilt/windows-x86_64/lib/
gcc/aarch64-linux-android/4.9.x/../../../../aarch64-linux-android/bin\ld: cannot
find -lc
D:\android\ndk/toolchains/aarch64-linux-android-4.9/prebuilt/windows-x86_64/lib/
gcc/aarch64-linux-android/4.9.x/../../../../aarch64-linux-android/bin\ld: cannot
find -ldl
D:\android\ndk/toolchains/aarch64-linux-android-4.9/prebuilt/windows-x86_64/lib/
gcc/aarch64-linux-android/4.9.x/../../../../aarch64-linux-android/bin\ld: cannot
find crtend_so.o: No such file or directory
clang++.exe: error: linker command failed with exit code 1 (use -v to see invoca
tion)
=====
scons: *** [bin\libgodot.android.opt.armv8.so] Error 1
scons: building terminated because of errors.
- error
Please help.
Thank you!
Hi,
I looked for tutorial like you did, I do not know how to start, how did you manage? I downloaded it:
- Python (already installed)
- Android SDK (already installed)
- JDK 8 (already installed)
I did not find these to install, what I do and how I do: - Android NDK
- SCons
which command?
can you teach me? I want to do more or less like yours, if I can, I’ll help you too.
sorry my English is bad
Skyline | 2019-03-23 01:03
I found error in platform\android\detect.py in line 145
ndk_platform = "android-21"
replace to
env["ndk_platform"] = "android-21"
Original part source
elif env["android_arch"] == "arm64v8":
if get_platform(ndk_platform) < 21:
print("WARNING: android_arch=arm64v8 is not supported by ndk_platform lower than android-21; setting ndk_platform=android-21")
ndk_platform = "android-21"
After replace
elif env["android_arch"] == "arm64v8":
if get_platform(ndk_platform) < 21:
print("WARNING: android_arch=arm64v8 is not supported by ndk_platform lower than android-21; setting ndk_platform=android-21")
env["ndk_platform"] = "android-21"
But other error with OpenSSL
[Initial build] <[91mLinking Shared Library <[95m==> <[93mbin\libgodot.android.o
pt.armv8.so<[0m
=====
modules\libmodules.android.opt.armv8.a(ui_openssl.android.opt.armv8.o): In funct
ion `read_string_inner':
ui_openssl.c:(.text.read_string_inner+0xac): undefined reference to `bsd_signal'
clang++.exe: error: linker command failed with exit code 1 (use -v to see invoca
tion)
=====
scons: *** [bin\libgodot.android.opt.armv8.so] Error 1
scons: building terminated because of errors.
If compiled with module_openssl_enabled=no
scons platform=android target=release android_arch=arm64v8 module_openssl_enabled=no
Compiled succes.
Error like https://stackoverflow.com/questions/36746904/android-linker-undefined-reference-to-bsd-signal ?
qaqaforum | 2019-03-27 06:27