Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error in Android build #14

Open
andrea1bergamini opened this issue Apr 14, 2022 · 0 comments
Open

Error in Android build #14

andrea1bergamini opened this issue Apr 14, 2022 · 0 comments

Comments

@andrea1bergamini
Copy link

andrea1bergamini commented Apr 14, 2022

Building the Android branch I get the following errors:

C:/test/qsqlcipher-qt5-android/android-libs/arm64-v8a/libsqlcipher.a(printf.o): In function `sqlite3_str_vappendf':
printf.c:(.text+0x110): undefined reference to `strchrnul'
C:/test/qsqlcipher-qt5-android/android-libs/arm64-v8a/libsqlcipher.a(crypto_impl.o): In function `sqlcipher_cipher_profile':
crypto_impl.c:(.text+0x3b84): undefined reference to `stderr'
crypto_impl.c:(.text+0x3b88): undefined reference to `stderr'
crypto_impl.c:(.text+0x3b8c): undefined reference to `stdout'
crypto_impl.c:(.text+0x3b90): undefined reference to `stdout'
C:/test/qsqlcipher-qt5-android/android-libs/arm64-v8a/libcrypto.a(cryptlib.o): In function `OPENSSL_showfatal':
cryptlib.c:(.text+0x28): undefined reference to `stderr'
cryptlib.c:(.text+0x30): undefined reference to `stderr'
C:/test/qsqlcipher-qt5-android/android-libs/arm64-v8a/libcrypto.a(ui_openssl.o): In function `open_console':
ui_openssl.c:(.text+0x68): undefined reference to `stdin'
ui_openssl.c:(.text+0x6c): undefined reference to `stdin'
ui_openssl.c:(.text+0x9c): undefined reference to `stderr'
ui_openssl.c:(.text+0xa0): undefined reference to `stderr'
C:/test/qsqlcipher-qt5-android/android-libs/arm64-v8a/libcrypto.a(ui_openssl.o): In function `close_console':
ui_openssl.c:(.text+0x374): undefined reference to `stdin'
ui_openssl.c:(.text+0x378): undefined reference to `stdin'
ui_openssl.c:(.text+0x3a0): undefined reference to `stderr'
ui_openssl.c:(.text+0x3a4): undefined reference to `stderr'
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [Makefile:75: plugins\sqldrivers\libqsqlcipher.so] Error 1

NDK version: 21.3.6528147
QT: 5.12.9
Same error with both Windows and Linux host

Error does not show with armeabi-v7a architecure, so it seems related to shared libraries for arm64-v8a or incompatible NDK used for build that libraries.

On the other hand, by using the Android-5.15 branch, the build is successfull for both ABI using QT 5.15 but fails with QT 5.12 using armeabi-v7a architecture (ok with arm64-v8a):

C:/test/qsqlcipher-qt5-android-5.15/android-libs/armeabi-v7a/libsqlcipher.a(mem1.o):mem1.c:function sqlite3MemRealloc: error: undefined reference to 'malloc_usable_size'
C:/test/qsqlcipher-qt5-android-5.15/android-libs/armeabi-v7a/libsqlcipher.a(mem1.o):mem1.c:function sqlite3MemSize: error: undefined reference to 'malloc_usable_size'
C:/test/qsqlcipher-qt5-android-5.15/android-libs/armeabi-v7a/libsqlcipher.a(os_unix.o):os_unix.c:aSyscall: error: undefined reference to 'mmap64'
C:/test/qsqlcipher-qt5-android-5.15/android-libs/armeabi-v7a/libsqlcipher.a(rtree.o):rtree.c:function geopolyParseNumber: error: undefined reference to 'atof'
C:/test/qsqlcipher-qt5-android-5.15/android-libs/armeabi-v7a/libcrypto.a(armcap.o):armcap.c:function OPENSSL_cpuid_setup: error: undefined reference to 'sigfillset'
C:/test/qsqlcipher-qt5-android-5.15/android-libs/armeabi-v7a/libcrypto.a(armcap.o):armcap.c:function OPENSSL_cpuid_setup: error: undefined reference to 'sigdelset'
C:/test/qsqlcipher-qt5-android-5.15/android-libs/armeabi-v7a/libcrypto.a(armcap.o):armcap.c:function OPENSSL_cpuid_setup: error: undefined reference to 'sigdelset'
C:/test/qsqlcipher-qt5-android-5.15/android-libs/armeabi-v7a/libcrypto.a(armcap.o):armcap.c:function OPENSSL_cpuid_setup: error: undefined reference to 'sigdelset'
C:/test/qsqlcipher-qt5-android-5.15/android-libs/armeabi-v7a/libcrypto.a(armcap.o):armcap.c:function OPENSSL_cpuid_setup: error: undefined reference to 'sigdelset'
C:/test/qsqlcipher-qt5-android-5.15/android-libs/armeabi-v7a/libcrypto.a(ui_openssl.o):ui_openssl.c:function open_console: error: undefined reference to 'tcgetattr'
C:/test/qsqlcipher-qt5-android-5.15/android-libs/armeabi-v7a/libcrypto.a(ui_openssl.o):ui_openssl.c:function read_string_inner: error: undefined reference to 'signal'
C:/test/qsqlcipher-qt5-android-5.15/android-libs/armeabi-v7a/libcrypto.a(ui_openssl.o):ui_openssl.c:function read_string_inner: error: undefined reference to 'tcsetattr'
C:/test/qsqlcipher-qt5-android-5.15/android-libs/armeabi-v7a/libcrypto.a(ui_openssl.o):ui_openssl.c:function read_string_inner: error: undefined reference to 'tcsetattr'
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [Makefile:75: plugins\sqldrivers\libqsqlcipher.so] Error 1

Same error with Windows and Linux host

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant