for more than a week now i am trying to build QtAV 1.12.0 for Android from a Windows 10 Machine, following these instructions:
https://github.com/wang-bin/QtAV/wiki/Build-QtAV
I am using
QtAV 1.12.0 from git.
Qt 5.12.4 (tried 5.14.0 but refering to https://github.com/wang-bin/QtAV/issues/1262 there are different/new issues)
JDK 1.8.0
NDK 19.2 (tried 21.1 as well)
Android SDK 26.1.1
ffmpeg dependencies: ffmpeg-3.1.4-anrdoid-armv7a-clang from here:
https://sourceforge.net/projects/qtav/files/depends/FFmpeg/android/
i tried different android ffmpeg dependencies from that page, all resulting in the same (or even earlier) errors.
Copied ffmpeg dependencies (/lib, /include, /share, ...) to the ..\Qt\Qt5.12.4\5.12.4\android_armv7 Folder
Copied ffmpeg dependencies to the Project root dir and added the INCLUDEPATH and LIBS to qtav.pro file (and later even to .qmake.conf)
Android Device setup is fine except for the OpenSSL part. I guess this is not relevant, right? (I can deploy my applications to my android phone anyway.)
I am using Qt Creator 4.12.3 to build and i am facing errors. The build process aborts at 108 warnings and 2 errors:
error: cannot find -lass
clang++.exe:-1: Fehler: error: linker command failed with exit code 1 (use -v to see invocation)
but in the /config.log way earlier errors occur, which i think may cascade down to the result above:
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/toolchains/llvm/prebuilt/windows-x86_64/bin/clang++ -D__ANDROID_API__=16 -target armv7-none-linux-androideabi -gcc-toolchain C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64 -fno-limit-debug-info -Wl,--exclude-libs,libgcc.a -Wl,--exclude-libs,libatomic.a -Wl,--exclude-libs,libunwind.a --sysroot=C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/platforms/android-16/arch-arm/ -Wl,--enable-new-dtags -Wl,--no-undefined -Wl,-z,noexecstack -shared -Wl,-soname,libavresample.so -o libavresample.so main.obj -lavresample -LC:/Qt/Qt5.12.4/5.12.4/android_armv7/lib -LC:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sources/cxx-stl/llvm-libc++/libs/armeabi-v7a C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sources/cxx-stl/llvm-libc++/libs/armeabi-v7a/libc++.so.16 -llog -lz -lm -ldl -lc
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64/lib/gcc/arm-linux-androideabi/4.9.x/../../../../arm-linux-androideabi/bin\ld: error: cannot find -lavresample
> clang++.exe: error: linker command failed with exit code 1 (use -v to see invocation)
> mingw32-make: *** [Makefile:71: libavresample.so] Error 1
test avresample FAILED
executing config test avfilter
+ cd /d C:\build-QtAV-USERDEF_Android\config.tests\avfilter && C:\Qt\Qt5.12.4\5.12.4\android_armv7\bin\qmake.exe -spec C:/Qt/Qt5.12.4/5.12.4/android_armv7/mkspecs/android-clang "CONFIG -= qt debug_and_release app_bundle lib_bundle" C:/QtAV/config.tests/avfilter
+ cd /d C:\build-QtAV-USERDEF_Android\config.tests\avfilter && set MAKEFLAGS=& mingw32-make
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/toolchains/llvm/prebuilt/windows-x86_64/bin/clang++ -c -D__ANDROID_API__=16 -target armv7-none-linux-androideabi -gcc-toolchain C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64 -fno-limit-debug-info -DANDROID_HAS_WSTRING --sysroot=C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sysroot -isystem C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sysroot/usr/include/arm-linux-androideabi -isystem C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sources/cxx-stl/llvm-libc++/include -isystem C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sources/android/support/include -isystem C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sources/cxx-stl/llvm-libc++abi/include -fstack-protector-strong -DANDROID -march=armv7-a -mfloat-abi=softfp -mfpu=vfp -fno-builtin-memmove -mthumb -Oz -std=gnu++11 -Wall -W -fPIC -D__STDC_CONSTANT_MACROS -IC:\QtAV\config.tests\avfilter -I. -IC:\Qt\Qt5.12.4\5.12.4\android_armv7\include -IC:\QtAV\contrib\dxsdk -IC:\Qt\Qt5.12.4\5.12.4\android_armv7\mkspecs\android-clang -o main.obj C:\QtAV\config.tests\avfilter\main.cpp
> del libavfilter.so
> C:\build-QtAV-USERDEF_Android\config.tests\avfilter\libavfilter.so konnte nicht gefunden werden
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/toolchains/llvm/prebuilt/windows-x86_64/bin/clang++ -D__ANDROID_API__=16 -target armv7-none-linux-androideabi -gcc-toolchain C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64 -fno-limit-debug-info -Wl,--exclude-libs,libgcc.a -Wl,--exclude-libs,libatomic.a -Wl,--exclude-libs,libunwind.a --sysroot=C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/platforms/android-16/arch-arm/ -Wl,--enable-new-dtags -Wl,--no-undefined -Wl,-z,noexecstack -shared -Wl,-soname,libavfilter.so -o libavfilter.so main.obj -lavfilter -LC:/Qt/Qt5.12.4/5.12.4/android_armv7/lib -LC:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sources/cxx-stl/llvm-libc++/libs/armeabi-v7a C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sources/cxx-stl/llvm-libc++/libs/armeabi-v7a/libc++.so.16 -llog -lz -lm -ldl -lc
test avfilter succeeded
executing config test avdevice
+ cd /d C:\build-QtAV-USERDEF_Android\config.tests\avdevice && C:\Qt\Qt5.12.4\5.12.4\android_armv7\bin\qmake.exe -spec C:/Qt/Qt5.12.4/5.12.4/android_armv7/mkspecs/android-clang "CONFIG -= qt debug_and_release app_bundle lib_bundle" C:/QtAV/config.tests/avdevice
+ cd /d C:\build-QtAV-USERDEF_Android\config.tests\avdevice && set MAKEFLAGS=& mingw32-make
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/toolchains/llvm/prebuilt/windows-x86_64/bin/clang++ -c -D__ANDROID_API__=16 -target armv7-none-linux-androideabi -gcc-toolchain C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64 -fno-limit-debug-info -DANDROID_HAS_WSTRING --sysroot=C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sysroot -isystem C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sysroot/usr/include/arm-linux-androideabi -isystem C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sources/cxx-stl/llvm-libc++/include -isystem C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sources/android/support/include -isystem C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sources/cxx-stl/llvm-libc++abi/include -fstack-protector-strong -DANDROID -march=armv7-a -mfloat-abi=softfp -mfpu=vfp -fno-builtin-memmove -mthumb -Oz -std=gnu++11 -Wall -W -fPIC -D__STDC_CONSTANT_MACROS -IC:\QtAV\config.tests\avdevice -I. -IC:\Qt\Qt5.12.4\5.12.4\android_armv7\include -IC:\QtAV\contrib\dxsdk -IC:\Qt\Qt5.12.4\5.12.4\android_armv7\mkspecs\android-clang -o main.obj C:\QtAV\config.tests\avdevice\main.cpp
> del libavdevice.so
> C:\build-QtAV-USERDEF_Android\config.tests\avdevice\libavdevice.so konnte nicht gefunden werden
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/toolchains/llvm/prebuilt/windows-x86_64/bin/clang++ -D__ANDROID_API__=16 -target armv7-none-linux-androideabi -gcc-toolchain C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64 -fno-limit-debug-info -Wl,--exclude-libs,libgcc.a -Wl,--exclude-libs,libatomic.a -Wl,--exclude-libs,libunwind.a --sysroot=C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/platforms/android-16/arch-arm/ -Wl,--enable-new-dtags -Wl,--no-undefined -Wl,-z,noexecstack -shared -Wl,-soname,libavdevice.so -o libavdevice.so main.obj -lavdevice -LC:/Qt/Qt5.12.4/5.12.4/android_armv7/lib -LC:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sources/cxx-stl/llvm-libc++/libs/armeabi-v7a C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sources/cxx-stl/llvm-libc++/libs/armeabi-v7a/libc++.so.16 -llog -lz -lm -ldl -lc
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64/lib/gcc/arm-linux-androideabi/4.9.x/../../../../arm-linux-androideabi/bin\ld: error: cannot find -lavdevice
> clang++.exe: error: linker command failed with exit code 1 (use -v to see invocation)
> mingw32-make: *** [Makefile:71: libavdevice.so] Error 1
test avdevice FAILED
executing config test sse4_1
+ cd /d C:\build-QtAV-USERDEF_Android\config.tests\sse4_1 && C:\Qt\Qt5.12.4\5.12.4\android_armv7\bin\qmake.exe -spec C:/Qt/Qt5.12.4/5.12.4/android_armv7/mkspecs/android-clang "CONFIG -= qt debug_and_release app_bundle lib_bundle" C:/QtAV/config.tests/sse4_1
+ cd /d C:\build-QtAV-USERDEF_Android\config.tests\sse4_1 && set MAKEFLAGS=& mingw32-make
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/toolchains/llvm/prebuilt/windows-x86_64/bin/clang++ -c -D__ANDROID_API__=16 -target armv7-none-linux-androideabi -gcc-toolchain C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64 -fno-limit-debug-info -DANDROID_HAS_WSTRING --sysroot=C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sysroot -isystem C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sysroot/usr/include/arm-linux-androideabi -isystem C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sources/cxx-stl/llvm-libc++/include -isystem C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sources/android/support/include -isystem C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sources/cxx-stl/llvm-libc++abi/include -fstack-protector-strong -DANDROID -march=armv7-a -mfloat-abi=softfp -mfpu=vfp -fno-builtin-memmove -msse4.1 -g -g -marm -O0 -std=gnu++11 -Wall -W -fPIC -IC:\QtAV\config.tests\sse4_1 -I. -IC:\Qt\Qt5.12.4\5.12.4\android_armv7\mkspecs\android-clang -o sse4_1.obj C:\QtAV\config.tests\sse4_1\sse4_1.cpp
> clang++.exe: warning: argument unused during compilation: '-msse4.1' [-Wunused-command-line-argument]
> In file included from C:\QtAV\config.tests\sse4_1\sse4_1.cpp:42:
> In file included from C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600\toolchains\llvm\prebuilt\windows-x86_64\lib64\clang\8.0.2\include\smmintrin.h:27:
> In file included from C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600\toolchains\llvm\prebuilt\windows-x86_64\lib64\clang\8.0.2\include\tmmintrin.h:27:
> In file included from C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600\toolchains\llvm\prebuilt\windows-x86_64\lib64\clang\8.0.2\include\pmmintrin.h:27:
> In file included from C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600\toolchains\llvm\prebuilt\windows-x86_64\lib64\clang\8.0.2\include\emmintrin.h:27:
> In file included from C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600\toolchains\llvm\prebuilt\windows-x86_64\lib64\clang\8.0.2\include\xmmintrin.h:27:
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600\toolchains\llvm\prebuilt\windows-x86_64\lib64\clang\8.0.2\include\mmintrin.h:47:5: error: use of undeclared identifier '__builtin_ia32_emms'; did you mean '__builtin_isless'?
> __builtin_ia32_emms();
> ^
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600\toolchains\llvm\prebuilt\windows-x86_64\lib64\clang\8.0.2\include\mmintrin.h:47:5: note: '__builtin_isless' declared here
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600\toolchains\llvm\prebuilt\windows-x86_64\lib64\clang\8.0.2\include\mmintrin.h:47:25: error: too few arguments to function call, expected 2, have 0
> __builtin_ia32_emms();
> ^
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600\toolchains\llvm\prebuilt\windows-x86_64\lib64\clang\8.0.2\include\mmintrin.h:64:19: error: use of undeclared identifier '__builtin_ia32_vec_init_v2si'
> return (__m64)__builtin_ia32_vec_init_v2si(__i, 0);
> ^
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600\toolchains\llvm\prebuilt\windows-x86_64\lib64\clang\8.0.2\include\mmintrin.h:81:12: error: use of undeclared identifier '__builtin_ia32_vec_ext_v2si'
> return __builtin_ia32_vec_ext_v2si((__v2si)__m, 0);
> ^
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600\toolchains\llvm\prebuilt\windows-x86_64\lib64\clang\8.0.2\include\mmintrin.h:143:19: error: use of undeclared identifier '__builtin_ia32_packsswb'
> return (__m64)__builtin_ia32_packsswb((__v4hi)__m1, (__v4hi)__m2);
> ^
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600\toolchains\llvm\prebuilt\windows-x86_64\lib64\clang\8.0.2\include\mmintrin.h:173:19: error: use of undeclared identifier '__builtin_ia32_packssdw'
> return (__m64)__builtin_ia32_packssdw((__v2si)__m1, (__v2si)__m2);
> ^
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600\toolchains\llvm\prebuilt\windows-x86_64\lib64\clang\8.0.2\include\mmintrin.h:203:19: error: use of undeclared identifier '__builtin_ia32_packuswb'
> return (__m64)__builtin_ia32_packuswb((__v4hi)__m1, (__v4hi)__m2);
> ^
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600\toolchains\llvm\prebuilt\windows-x86_64\lib64\clang\8.0.2\include\mmintrin.h:230:19: error: use of undeclared identifier '__builtin_ia32_punpckhbw'
> return (__m64)__builtin_ia32_punpckhbw((__v8qi)__m1, (__v8qi)__m2);
> ^
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600\toolchains\llvm\prebuilt\windows-x86_64\lib64\clang\8.0.2\include\mmintrin.h:253:19: error: use of undeclared identifier '__builtin_ia32_punpckhwd'
> return (__m64)__builtin_ia32_punpckhwd((__v4hi)__m1, (__v4hi)__m2);
> ^
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600\toolchains\llvm\prebuilt\windows-x86_64\lib64\clang\8.0.2\include\mmintrin.h:274:19: error: use of undeclared identifier '__builtin_ia32_punpckhdq'
> return (__m64)__builtin_ia32_punpckhdq((__v2si)__m1, (__v2si)__m2);
> ^
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600\toolchains\llvm\prebuilt\windows-x86_64\lib64\clang\8.0.2\include\mmintrin.h:301:19: error: use of undeclared identifier '__builtin_ia32_punpcklbw'
> return (__m64)__builtin_ia32_punpcklbw((__v8qi)__m1, (__v8qi)__m2);
> ^
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600\toolchains\llvm\prebuilt\windows-x86_64\lib64\clang\8.0.2\include\mmintrin.h:324:19: error: use of undeclared identifier '__builtin_ia32_punpcklwd'
> return (__m64)__builtin_ia32_punpcklwd((__v4hi)__m1, (__v4hi)__m2);
> ^
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600\toolchains\llvm\prebuilt\windows-x86_64\lib64\clang\8.0.2\include\mmintrin.h:345:19: error: use of undeclared identifier '__builtin_ia32_punpckldq'
> return (__m64)__builtin_ia32_punpckldq((__v2si)__m1, (__v2si)__m2);
> ^
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600\toolchains\llvm\prebuilt\windows-x86_64\lib64\clang\8.0.2\include\mmintrin.h:366:19: error: use of undeclared identifier '__builtin_ia32_paddb'
> return (__m64)__builtin_ia32_paddb((__v8qi)__m1, (__v8qi)__m2);
> ^
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600\toolchains\llvm\prebuilt\windows-x86_64\lib64\clang\8.0.2\include\mmintrin.h:387:19: error: use of undeclared identifier '__builtin_ia32_paddw'
> return (__m64)__builtin_ia32_paddw((__v4hi)__m1, (__v4hi)__m2);
> ^
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600\toolchains\llvm\prebuilt\windows-x86_64\lib64\clang\8.0.2\include\mmintrin.h:408:19: error: use of undeclared identifier '__builtin_ia32_paddd'
> return (__m64)__builtin_ia32_paddd((__v2si)__m1, (__v2si)__m2);
> ^
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600\toolchains\llvm\prebuilt\windows-x86_64\lib64\clang\8.0.2\include\mmintrin.h:430:19: error: use of undeclared identifier '__builtin_ia32_paddsb'
> return (__m64)__builtin_ia32_paddsb((__v8qi)__m1, (__v8qi)__m2);
> ^
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600\toolchains\llvm\prebuilt\windows-x86_64\lib64\clang\8.0.2\include\mmintrin.h:453:19: error: use of undeclared identifier '__builtin_ia32_paddsw'
> return (__m64)__builtin_ia32_paddsw((__v4hi)__m1, (__v4hi)__m2);
> ^
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600\toolchains\llvm\prebuilt\windows-x86_64\lib64\clang\8.0.2\include\mmintrin.h:475:19: error: use of undeclared identifier '__builtin_ia32_paddusb'
> return (__m64)__builtin_ia32_paddusb((__v8qi)__m1, (__v8qi)__m2);
> ^
> fatal error: too many errors emitted, stopping now [-ferror-limit=]
> 20 errors generated.
> mingw32-make: *** [Makefile:438: sse4_1.obj] Error 1
test sse4_1 FAILED
executing config test openal
+ cd /d C:\build-QtAV-USERDEF_Android\config.tests\openal && C:\Qt\Qt5.12.4\5.12.4\android_armv7\bin\qmake.exe -spec C:/Qt/Qt5.12.4/5.12.4/android_armv7/mkspecs/android-clang "CONFIG -= qt debug_and_release app_bundle lib_bundle" C:/QtAV/config.tests/openal
+ cd /d C:\build-QtAV-USERDEF_Android\config.tests\openal && set MAKEFLAGS=& mingw32-make
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/toolchains/llvm/prebuilt/windows-x86_64/bin/clang++ -c -D__ANDROID_API__=16 -target armv7-none-linux-androideabi -gcc-toolchain C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64 -fno-limit-debug-info -DANDROID_HAS_WSTRING --sysroot=C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sysroot -isystem C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sysroot/usr/include/arm-linux-androideabi -isystem C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sources/cxx-stl/llvm-libc++/include -isystem C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sources/android/support/include -isystem C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sources/cxx-stl/llvm-libc++abi/include -fstack-protector-strong -DANDROID -march=armv7-a -mfloat-abi=softfp -mfpu=vfp -fno-builtin-memmove -O2 -O2 -mthumb -IC:\QtAV\config.tests\openal -I. -IC:\Qt\Qt5.12.4\5.12.4\android_armv7\include -IC:\QtAV\contrib\dxsdk -IC:\Qt\Qt5.12.4\5.12.4\android_armv7\mkspecs\android-clang -o main.obj C:\QtAV\config.tests\openal\main.cpp
> del libopenal.a
> C:\build-QtAV-USERDEF_Android\config.tests\openal\libopenal.a konnte nicht gefunden werden
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64/bin/arm-linux-androideabi-ar cqs libopenal.a main.obj
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64/bin/arm-linux-androideabi-ranlib libopenal.a
test openal succeeded
executing config test libass
+ cd /d C:\build-QtAV-USERDEF_Android\config.tests\libass && C:\Qt\Qt5.12.4\5.12.4\android_armv7\bin\qmake.exe -spec C:/Qt/Qt5.12.4/5.12.4/android_armv7/mkspecs/android-clang "CONFIG -= qt debug_and_release app_bundle lib_bundle" C:/QtAV/config.tests/libass
+ cd /d C:\build-QtAV-USERDEF_Android\config.tests\libass && set MAKEFLAGS=& mingw32-make
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/toolchains/llvm/prebuilt/windows-x86_64/bin/clang++ -c -D__ANDROID_API__=16 -target armv7-none-linux-androideabi -gcc-toolchain C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64 -fno-limit-debug-info -DANDROID_HAS_WSTRING --sysroot=C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sysroot -isystem C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sysroot/usr/include/arm-linux-androideabi -isystem C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sources/cxx-stl/llvm-libc++/include -isystem C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sources/android/support/include -isystem C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sources/cxx-stl/llvm-libc++abi/include -fstack-protector-strong -DANDROID -march=armv7-a -mfloat-abi=softfp -mfpu=vfp -fno-builtin-memmove -O2 -O2 -mthumb -IC:\QtAV\config.tests\libass -I. -IC:\Qt\Qt5.12.4\5.12.4\android_armv7\include -IC:\QtAV\contrib\dxsdk -IC:\Qt\Qt5.12.4\5.12.4\android_armv7\mkspecs\android-clang -o main.obj C:\QtAV\config.tests\libass\main.cpp
> del liblibass.a
> C:\build-QtAV-USERDEF_Android\config.tests\libass\liblibass.a konnte nicht gefunden werden
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64/bin/arm-linux-androideabi-ar cqs liblibass.a main.obj
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64/bin/arm-linux-androideabi-ranlib liblibass.a
test libass succeeded
executing config test uchardet
+ cd /d C:\build-QtAV-USERDEF_Android\config.tests\uchardet && C:\Qt\Qt5.12.4\5.12.4\android_armv7\bin\qmake.exe -spec C:/Qt/Qt5.12.4/5.12.4/android_armv7/mkspecs/android-clang "CONFIG -= qt debug_and_release app_bundle lib_bundle" C:/QtAV/config.tests/uchardet
+ cd /d C:\build-QtAV-USERDEF_Android\config.tests\uchardet && set MAKEFLAGS=& mingw32-make
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/toolchains/llvm/prebuilt/windows-x86_64/bin/clang++ -c -D__ANDROID_API__=16 -target armv7-none-linux-androideabi -gcc-toolchain C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64 -fno-limit-debug-info -DANDROID_HAS_WSTRING --sysroot=C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sysroot -isystem C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sysroot/usr/include/arm-linux-androideabi -isystem C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sources/cxx-stl/llvm-libc++/include -isystem C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sources/android/support/include -isystem C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sources/cxx-stl/llvm-libc++abi/include -fstack-protector-strong -DANDROID -march=armv7-a -mfloat-abi=softfp -mfpu=vfp -fno-builtin-memmove -mthumb -Oz -std=gnu++11 -Wall -W -fPIC -IC:\QtAV\config.tests\uchardet -I. -IC:\Qt\Qt5.12.4\5.12.4\android_armv7\include -IC:\QtAV\contrib\dxsdk -IC:\Qt\Qt5.12.4\5.12.4\android_armv7\mkspecs\android-clang -o main.obj C:\QtAV\config.tests\uchardet\main.cpp
> C:\QtAV\config.tests\uchardet\main.cpp:21:10: fatal error: 'uchardet/uchardet.h' file not found
> #include
> ^~~~~~~~~~~~~~~~~~~~~
> 1 error generated.
> mingw32-make: *** [Makefile:451: main.obj] Error 1
test uchardet FAILED
executing config test libcedarv
+ cd /d C:\build-QtAV-USERDEF_Android\config.tests\libcedarv && C:\Qt\Qt5.12.4\5.12.4\android_armv7\bin\qmake.exe -spec C:/Qt/Qt5.12.4/5.12.4/android_armv7/mkspecs/android-clang "CONFIG -= qt debug_and_release app_bundle lib_bundle" C:/QtAV/config.tests/libcedarv
+ cd /d C:\build-QtAV-USERDEF_Android\config.tests\libcedarv && set MAKEFLAGS=& mingw32-make
> C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/toolchains/llvm/prebuilt/windows-x86_64/bin/clang++ -c -D__ANDROID_API__=16 -target armv7-none-linux-androideabi -gcc-toolchain C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64 -fno-limit-debug-info -DANDROID_HAS_WSTRING --sysroot=C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sysroot -isystem C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sysroot/usr/include/arm-linux-androideabi -isystem C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sources/cxx-stl/llvm-libc++/include -isystem C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sources/android/support/include -isystem C:\Users\User\AppData\Local\Android\Sdk\ndk\19.2.5345600/sources/cxx-stl/llvm-libc++abi/include -fstack-protector-strong -DANDROID -march=armv7-a -mfloat-abi=softfp -mfpu=vfp -fno-builtin-memmove -mthumb -Oz -std=gnu++11 -Wall -W -fPIC -IC:\QtAV\config.tests\libcedarv -I. -IC:\Qt\Qt5.12.4\5.12.4\android_armv7\include -IC:\QtAV\contrib\dxsdk -IC:\Qt\Qt5.12.4\5.12.4\android_armv7\mkspecs\android-clang -o main.obj C:\QtAV\config.tests\libcedarv\main.cpp
> C:\QtAV\config.tests\libcedarv\main.cpp:21:10: fatal error: 'libcedarv/libcedarv.h' file not found
> #include
> ^~~~~~~~~~~~~~~~~~~~~~~
> 1 error generated.
> mingw32-make: *** [Makefile:451: main.obj] Error 1
test libcedarv FAILED
I am not tied to a specific SDK / NDK / Qt / QtAV Version.
I successfully built QtAV for MSVC2017 x32 and x64 so i assume it must have something to do with the ffmpeg dependecies or the whole JDK/SDK/NDK setup. Anyone has a clue where i am going wrong here?
Since the building starts and runs for a while i think that the provided depencencies are found by the compiler/linker but may be incomplete?
As a note: AFAIK the libass stuff is required for displaying subtitles in videos. I do not need that feature (i want to stream rstp live streams from cameras). Disabling modules as a workaround, e.g. with a CONFIG -= switch, is a welcome solution as well and a try worth.
What i am not sure about is the Kit/sysroot line. Is there anything required here? It is empty by default.
This is not directly answering your question but it may still help you to avoid it maybe:
QtAV library has been rewritten from scratch by its developer under the new project "MDK-SDK" (link below).
https://github.com/wang-bin/mdk-sdk
Because these libraries are very complicated to build with many dependencies, he provides binaries for most platforms as nightly build.
https://sourceforge.net/projects/mdk-sdk/files/nightly/
NOTE: The license is not free from commercial apps, (but is affordable) and the library works well with good performance.
i am building webrtc for Android & i had followed following steps for generating webrtc library:
source build/android/envsetup.sh
python webrtc/build/gyp_webrtc
ninja -c out/Debug
this generates following error:
ninja: build stopped: subcommand failed. ninja: Entering directory
`./out/Release/' [3/2806] CC
obj/webrtc/system_wrappers/source/cpu_features_android.cpu_features_android.o
FAILED:
/home/rtcdev/Nishant/src/third_party/android_tools/ndk//toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/bin/arm-linux-androideabi-gcc
-MMD -MF obj/webrtc/system_wrappers/source/cpu_features_android.cpu_features_android.o.d
-DV8_DEPRECATION_WARNINGS -DCLD_VERSION=1 -D_FILE_OFFSET_BITS=64 -DNO_TCMALLOC -DDISABLE_NACL
-DCHROMIUM_BUILD -DCR_CLANG_REVISION=233105-2 -DUSE_LIBJPEG_TURBO=1 -DENABLE_WEBRTC=1 -DENABLE_MEDIA_ROUTER=1
-DUSE_PROPRIETARY_CODECS -DENABLE_BROWSER_CDMS -DENABLE_CONFIGURATION_POLICY -DENABLE_NOTIFICATIONS
-DSYSTEM_NATIVELY_SIGNALS_MEMORY_PRESSURE -DDONT_EMBED_BUILD_METADATA -DFIELDTRIAL_TESTING_ENABLED
-DENABLE_AUTOFILL_DIALOG=1 -DENABLE_PRINTING=1 -DENABLE_BASIC_PRINTING=1 -DENABLE_SPELLCHECK=1
-DUSE_BROWSER_SPELLCHECKER=1 -DENABLE_SUPERVISED_USERS=1 -DVIDEO_HOLE=1 -DV8_USE_EXTERNAL_STARTUP_DATA
-DENABLE_WEBVR -DMOBILE_SAFE_BROWSING -DSAFE_BROWSING_DB_REMOTE -DSAFE_BROWSING_SERVICE
-DEXPAT_RELATIVE_PATH -DWEBRTC_MODULE_UTILITY_VIDEO -DWEBRTC_ARCH_ARM -DWEBRTC_ARCH_ARM_V7
-DWEBRTC_DETECT_ARM_NEON -DWEBRTC_POSIX -DWEBRTC_LINUX -DWEBRTC_ANDROID -DWEBRTC_ANDROID_OPENSLES -DUSE_LIBPCI=1
-DUSE_OPENSSL=1 -DUSE_OPENSSL_CERTS=1 -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DANDROID -D__GNU_SOURCE=1
'-DCHROME_BUILD_ID=""' -DHAVE_SYS_UIO_H -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0
-D_FORTIFY_SOURCE=2
-Igen -I../..
-fstack-protector --param=ssp-buffer-size=4 -Werror -fno-strict-aliasing
-Wall -Wno-unused-parameter -Wno-missing-field-initializers -fvisibility=hidden -pipe -fPIC -Wno-unused-local-typedefs
-Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wno-strict-overflow -fno-builtin-cos -fno-builtin-sin
-fno-builtin-cosf -fno-builtin-sinf -march=armv7-a -mtune=generic-armv7-a -mfpu=vfpv3-d16 -mfloat-abi=softfp
-mthumb -fno-tree-sra -fno-caller-saves -Wno-psabi -mthumb-interwork -ffunction-sections -funwind-tables
-g -fstack-protector -fno-short-enums -finline-limit=64
--sysroot=../../third_party/android_tools/ndk//platforms/android-16/arch-arm
-isystem../../third_party/android_tools/ndk//sources/cxx-stl/llvm-libc++/libcxx/include
-isystem../../third_party/android_tools/ndk//sources/cxx-stl/llvm-libc++abi/libcxxabi/include
-isystem../../third_party/android_tools/ndk//sources/android/support/include
-Os -fno-ident -fdata-sections -ffunction-sections -fomit-frame-pointer -funwind-tables
-c ../../webrtc/system_wrappers/source/cpu_features_android.c
-o obj/webrtc/system_wrappers/source/cpu_features_android.cpu_features_android.o
../../webrtc/system_wrappers/source/cpu_features_android.c:11:26:
fatal error: cpu-features.h: No such file or directory #include
^ compilation terminated.
Does Anyone have Any idea by seeing webrtc Flags, what i am missing for webrtc Android?
The compiler could not find the header file cpu-features.h, so find out which directory it resides, and then add that directory to the compiler flags, just like the other directory you already have.
i try to compile nite2 for android platform
but it throw out some error ,
is there someone can answer my question?
ash#XxAshxX:~/usr/NITE2/NiTE-2.0.0/Samples$ cd SimpleUserTracker/
ash#XxAshxX:~/usr/NITE2/NiTE-2.0.0/Samples/SimpleUserTracker$ l
main.cpp Makefile
ash#XxAshxX:~/usr/NITE2/NiTE-2.0.0/Samples/SimpleUserTracker$ PLATFORM=Arm make
arm-none-linux-gnueabi-g++ -MD -MP -MT "./../Bin/Intermediate/Arm-Release/SimpleUserTracker/main.d ../Bin/Intermediate/Arm-Release/SimpleUserTracker/main.o" -c -march=armv7-a -mtune=cortex-a8 -mfpu=neon -mfloat-abi=softfp -O3 -fno-tree-pre -fno-strict-aliasing -ftree-vectorize -ffast-math -funsafe-math-optimizations -fsingle-precision-constant -Wall --sysroot=/opt/ -O2 -DNDEBUG -I../../Include -I/home/ash/usr/OpenNI2-android/Include/ -fPIC -fvisibility=hidden -o ../Bin/Intermediate/Arm-Release/SimpleUserTracker/main.o main.cpp
In file included from /home/ash/usr/OpenNI2-android/Include/Linux-Arm/OniPlatformLinux-Arm.h:25,
from /home/ash/usr/OpenNI2-android/Include/OniPlatform.h:43,
from ../../Include/NiteCAPI.h:8,
from ../../Include/NiTE.h:11,
from main.cpp:8:
/home/ash/usr/OpenNI2-android/Include/Linux-Arm/../Linux-x86/OniPlatformLinux-x86.h:31: fatal error: unistd.h: No such file or directory
compilation terminated.
make: *** [../Bin/Intermediate/Arm-Release/SimpleUserTracker/main.o] error 1
Since SimpleUserTracker utilizes a proprietary NiTE2 library its not possible to compile this source code for arm platform.
I allready created pyton for android folder few days ago, but forgot to nclude some modules. So I just wanted to do this again...
Tis is a result of ./distribute.sh
Python build finished, but the necessary bits to build these modules were not found:
_bsddb _curses _curses_panel
_sqlite3 _ssl _tkinter
bsddb185 bz2 dbm
gdbm linuxaudiodev ossaudiodev
sunaudiodev
To find the necessary bits, look in setup.py in detect_modules() for the module's name.
Failed to build these modules:
readline
Call build_python
Entering in ARM environment
Compiler found at /home/pawel/.buildozer/android/platform/android-ndk-r9c//toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86/bin//arm-linux-androideabi-gcc
configure: WARNING: if you wanted to set the --build type, don't use --host.
If a cross compiler is detected then cross compile mode will be used
checking for --enable-universalsdk... no
checking for --with-universal-archs... 32-bit
checking MACHDEP... linux3
checking EXTRAPLATDIR...
checking machine type as reported by uname -m... i686
checking for --without-gcc... no
checking for arm-eabi-gcc... ccache arm-linux-androideabi-gcc -DANDROID -mandroid -fomit-frame-pointer --sysroot /home/pawel/.buildozer/android/platform/android-ndk-r9c//platforms/android-21/arch-arm
checking whether the C compiler works... no
configure: error: in `/home/pawel/python-for-android/build/python/Python-2.7.2':
configure: error: C compiler cannot create executables
See `config.log' for more details
And this is the end of config.log:
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
It was created by python configure 2.7, which was
generated by GNU Autoconf 2.68. Invocation command line was
$ ./configure --host=arm-eabi OPT= --prefix=/home/pawel/python-for-android/build/python-install --enable-shared --disable-toolbox-glue --disable-framework
## --------- ##
## Platform. ##
## --------- ##
hostname = pawel-ThinkPad-X61-Tablet
uname -m = i686
uname -r = 3.13.0-24-generic
uname -s = Linux
uname -v = #47-Ubuntu SMP Fri May 2 23:31:42 UTC 2014
/usr/bin/uname -p = unknown
/bin/uname -X = unknown
/bin/arch = unknown
/usr/bin/arch -k = unknown
/usr/convex/getsysinfo = unknown
/usr/bin/hostinfo = unknown
/bin/machine = unknown
/usr/bin/oslevel = unknown
/bin/universe = unknown
PATH: /home/pawel/.buildozer/android/platform/android-ndk-r9c//toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86/bin/
PATH: /home/pawel/.buildozer/android/platform/android-ndk-r9c//toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86_64/bin/
PATH: /home/pawel/.buildozer/android/platform/android-ndk-r9c/
PATH: /home/pawel/.buildozer/android/platform/android-sdk-21//tools
PATH: .
PATH: /platform-tools
PATH: /tools
PATH: /usr/local/sbin
PATH: /usr/local/bin
PATH: /usr/sbin
PATH: /usr/bin
PATH: /sbin
PATH: /bin
PATH: /usr/games
PATH: /usr/local/games
## ----------- ##
## Core tests. ##
## ----------- ##
configure:2764: checking for --enable-universalsdk
configure:2805: result: no
configure:2814: checking for --with-universal-archs
configure:2831: result: 32-bit
configure:2988: checking MACHDEP
configure:3136: result: linux3
configure:3142: checking EXTRAPLATDIR
configure:3157: result:
configure:3168: checking machine type as reported by uname -m
configure:3171: result: i686
configure:3184: checking for --without-gcc
configure:3228: result: no
configure:3249: checking for arm-eabi-gcc
configure:3276: result: ccache arm-linux-androideabi-gcc -DANDROID -mandroid -fomit-frame-pointer --sysroot /home/pawel/.buildozer/android/platform/android-ndk-r9c//platforms/android-21/arch-arm
configure:3545: checking for C compiler version
configure:3554: ccache arm-linux-androideabi-gcc -DANDROID -mandroid -fomit-frame-pointer --sysroot /home/pawel/.buildozer/android/platform/android-ndk-r9c//platforms/android-21/arch-arm --version >&5
arm-linux-androideabi-gcc (GCC) 4.8
Copyright (C) 2013 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
configure:3565: $? = 0
configure:3554: ccache arm-linux-androideabi-gcc -DANDROID -mandroid -fomit-frame-pointer --sysroot /home/pawel/.buildozer/android/platform/android-ndk-r9c//platforms/android-21/arch-arm -v >&5
Using built-in specs.
COLLECT_GCC=/home/pawel/.buildozer/android/platform/android-ndk-r9c//toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86/bin//arm-linux-androideabi-gcc
COLLECT_LTO_WRAPPER=/home/pawel/.buildozer/android/platform/android-ndk-r9c/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86/bin/../libexec/gcc/arm-linux-androideabi/4.8/lto-wrapper
Target: arm-linux-androideabi
Configured with: /s/ndk-toolchain/src/build/../gcc/gcc-4.8/configure --prefix=/tmp/ndk-andrewhsieh/build/toolchain/prefix --target=arm-linux-androideabi --host=x86_64-linux-gnu --build=x86_64-linux-gnu --with-gnu-as --with-gnu-ld --enable-languages=c,c++ --with-gmp=/tmp/ndk-andrewhsieh/build/toolchain/temp-install --with-mpfr=/tmp/ndk-andrewhsieh/build/toolchain/temp-install --with-mpc=/tmp/ndk-andrewhsieh/build/toolchain/temp-install --with-cloog=/tmp/ndk-andrewhsieh/build/toolchain/temp-install --with-isl=/tmp/ndk-andrewhsieh/build/toolchain/temp-install --with-ppl=/tmp/ndk-andrewhsieh/build/toolchain/temp-install --disable-ppl-version-check --disable-cloog-version-check --disable-isl-version-check --enable-cloog-backend=isl --with-host-libstdcxx='-static-libgcc -Wl,-Bstatic,-lstdc++,-Bdynamic -lm' --disable-libssp --enable-threads --disable-nls --disable-libmudflap --disable-libgomp --disable-libstdc__-v3 --disable-sjlj-exceptions --disable-shared --disable-tls --disable-libitm --with-float=soft --with-fpu=vfp --with-arch=armv5te --enable-target-optspace --enable-initfini-array --disable-nls --prefix=/tmp/ndk-andrewhsieh/build/toolchain/prefix --with-sysroot=/tmp/ndk-andrewhsieh/build/toolchain/prefix/sysroot --with-binutils-version=2.23 --with-mpfr-version=3.1.1 --with-mpc-version=1.0.1 --with-gmp-version=5.0.5 --with-gcc-version=4.8 --with-gdb-version=7.3.x --with-python=/usr/local/google/home/andrewhsieh/mydroid/ndk/prebuilt/linux-x86/bin/python-config.sh --with-gxx-include-dir=/tmp/ndk-andrewhsieh/build/toolchain/prefix/include/c++/4.8 --with-bugurl=http://source.android.com/source/report-bugs.html --disable-bootstrap --disable-libquadmath --enable-plugins --enable-libgomp --disable-libsanitizer --enable-gold --enable-graphite=yes --with-cloog-version=0.18.0 --with-isl-version=0.11.1 --enable-eh-frame-hdr-for-static --with-arch=armv5te --program-transform-name='s&^&arm-linux-androideabi-&' --enable-gold=default
Thread model: posix
gcc version 4.8 (GCC)
configure:3565: $? = 0
configure:3554: ccache arm-linux-androideabi-gcc -DANDROID -mandroid -fomit-frame-pointer --sysroot /home/pawel/.buildozer/android/platform/android-ndk-r9c//platforms/android-21/arch-arm -V >&5
arm-linux-androideabi-gcc: error: unrecognized command line option '-V'
arm-linux-androideabi-gcc: fatal error: no input files
compilation terminated.
configure:3565: $? = 1
configure:3554: ccache arm-linux-androideabi-gcc -DANDROID -mandroid -fomit-frame-pointer --sysroot /home/pawel/.buildozer/android/platform/android-ndk-r9c//platforms/android-21/arch-arm -qversion >&5
arm-linux-androideabi-gcc: error: unrecognized command line option '-qversion'
arm-linux-androideabi-gcc: fatal error: no input files
compilation terminated.
configure:3565: $? = 1
configure:3585: checking whether the C compiler works
configure:3607: ccache arm-linux-androideabi-gcc -DANDROID -mandroid -fomit-frame-pointer --sysroot /home/pawel/.buildozer/android/platform/android-ndk-r9c//platforms/android-21/arch-arm -DANDROID -mandroid -fomit-frame-pointer --sysroot /home/pawel/.buildozer/android/platform/android-ndk-r9c//platforms/android-21/arch-arm -lm conftest.c >&5
/home/pawel/.buildozer/android/platform/android-ndk-r9c/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.8/../../../../arm-linux-androideabi/bin/ld: error: cannot open crtbegin_dynamic.o: No such file or directory
/home/pawel/.buildozer/android/platform/android-ndk-r9c/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.8/../../../../arm-linux-androideabi/bin/ld: error: cannot open crtend_android.o: No such file or directory
/home/pawel/.buildozer/android/platform/android-ndk-r9c/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.8/../../../../arm-linux-androideabi/bin/ld: error: cannot find -lm
/home/pawel/.buildozer/android/platform/android-ndk-r9c/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.8/../../../../arm-linux-androideabi/bin/ld: error: cannot find -lc
/home/pawel/.buildozer/android/platform/android-ndk-r9c/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.8/../../../../arm-linux-androideabi/bin/ld: error: cannot find -ldl
collect2: error: ld returned 1 exit status
configure:3611: $? = 1
configure:3649: result: no
configure: failed program was:
| /* confdefs.h */
| #define _GNU_SOURCE 1
| #define _NETBSD_SOURCE 1
| #define __BSD_VISIBLE 1
| #define _BSD_TYPES 1
| #define _DARWIN_C_SOURCE 1
| #define _XOPEN_SOURCE 600
| #define _XOPEN_SOURCE_EXTENDED 1
| #define _POSIX_C_SOURCE 200112L
| /* end confdefs.h. */
|
| int
| main ()
| {
|
| ;
| return 0;
| }
configure:3654: error: in `/home/pawel/python-for-android/build/python/Python-2.7.2':
configure:3656: error: C compiler cannot create executables
See `config.log' for more details
## ---------------- ##
## Cache variables. ##
## ---------------- ##
ac_cv_env_CC_set=set
ac_cv_env_CC_value='ccache arm-linux-androideabi-gcc -DANDROID -mandroid -fomit-frame-pointer --sysroot /home/pawel/.buildozer/android/platform/android-ndk-r9c//platforms/android-21/arch-arm'
ac_cv_env_CFLAGS_set=set
ac_cv_env_CFLAGS_value='-DANDROID -mandroid -fomit-frame-pointer --sysroot /home/pawel/.buildozer/android/platform/android-ndk-r9c//platforms/android-21/arch-arm'
ac_cv_env_CPPFLAGS_set=
ac_cv_env_CPPFLAGS_value=
ac_cv_env_CPP_set=
ac_cv_env_CPP_value=
ac_cv_env_LDFLAGS_set=set
ac_cv_env_LDFLAGS_value=-lm
ac_cv_env_LIBS_set=
ac_cv_env_LIBS_value=
ac_cv_env_build_alias_set=
ac_cv_env_build_alias_value=
ac_cv_env_host_alias_set=set
ac_cv_env_host_alias_value=arm-eabi
ac_cv_env_target_alias_set=
ac_cv_env_target_alias_value=
ac_cv_prog_CC='ccache arm-linux-androideabi-gcc -DANDROID -mandroid -fomit-frame-pointer --sysroot /home/pawel/.buildozer/android/platform/android-ndk-r9c//platforms/android-21/arch-arm'
## ----------------- ##
## Output variables. ##
## ----------------- ##
AR='arm-linux-androideabi-ar'
ARCH_RUN_32BIT=''
ARFLAGS=''
BASECFLAGS=''
BLDLIBRARY=''
BLDSHARED=''
BUILDEXEEXT=''
CC='ccache arm-linux-androideabi-gcc -DANDROID -mandroid -fomit-frame-pointer --sysroot /home/pawel/.buildozer/android/platform/android-ndk-r9c//platforms/android-21/arch-arm'
CCSHARED=''
CFLAGS='-DANDROID -mandroid -fomit-frame-pointer --sysroot /home/pawel/.buildozer/android/platform/android-ndk-r9c//platforms/android-21/arch-arm'
CFLAGSFORSHARED=''
CONFIGURE_MACOSX_DEPLOYMENT_TARGET=''
CONFIG_ARGS=' '\''--host=arm-eabi'\'' '\''OPT='\'' '\''--prefix=/home/pawel/python-for-android/build/python-install'\'' '\''--enable-shared'\'' '\''--disable-toolbox-glue'\'' '\''--disable-framework'\'' '\''host_alias=arm-eabi'\'' '\''CC=ccache arm-linux-androideabi-gcc -DANDROID -mandroid -fomit-frame-pointer --sysroot /home/pawel/.buildozer/android/platform/android-ndk-r9c//platforms/android-21/arch-arm'\'' '\''CFLAGS=-DANDROID -mandroid -fomit-frame-pointer --sysroot /home/pawel/.buildozer/android/platform/android-ndk-r9c//platforms/android-21/arch-arm'\'' '\''LDFLAGS=-lm'\'''
CPP=''
CPPFLAGS=''
CXX='ccache arm-linux-androideabi-g++ -DANDROID -mandroid -fomit-frame-pointer --sysroot /home/pawel/.buildozer/android/platform/android-ndk-r9c//platforms/android-21/arch-arm'
DEFS=''
DLINCLDIR=''
DLLLIBRARY=''
DYNLOADFILE=''
ECHO_C=''
ECHO_N='-n'
ECHO_T=''
EGREP=''
EXEEXT=''
EXPORT_MACOSX_DEPLOYMENT_TARGET='#'
EXTRAMACHDEPPATH=''
EXTRAPLATDIR=''
FRAMEWORKALTINSTALLFIRST=''
FRAMEWORKALTINSTALLLAST=''
FRAMEWORKINSTALLAPPSPREFIX=''
FRAMEWORKINSTALLFIRST=''
FRAMEWORKINSTALLLAST=''
FRAMEWORKUNIXTOOLSPREFIX='/home/pawel/python-for-android/build/python-install'
GNULD=''
GREP=''
HAS_HG=''
HAVE_GETHOSTBYNAME=''
HAVE_GETHOSTBYNAME_R=''
HAVE_GETHOSTBYNAME_R_3_ARG=''
HAVE_GETHOSTBYNAME_R_5_ARG=''
HAVE_GETHOSTBYNAME_R_6_ARG=''
HGBRANCH=''
HGTAG=''
HGVERSION=''
INSTALL_DATA=''
INSTALL_PROGRAM=''
INSTALL_SCRIPT=''
INSTSONAME=''
LDCXXSHARED=''
LDFLAGS='-lm'
LDLAST=''
LDLIBRARY=''
LDLIBRARYDIR=''
LDSHARED=''
LIBC=''
LIBFFI_INCLUDEDIR=''
LIBM=''
LIBOBJS=''
LIBRARY=''
LIBS=''
LIBTOOL_CRUFT=''
LINKCC=''
LINKFORSHARED=''
LIPO_32BIT_FLAGS=''
LN=''
LTLIBOBJS=''
MACHDEP='linux3'
MACHDEP_OBJS=''
MAINCC=''
OBJEXT=''
OPT=''
OTHER_LIBTOOL_OPT=''
PACKAGE_BUGREPORT='http://bugs.python.org/'
PACKAGE_NAME='python'
PACKAGE_STRING='python 2.7'
PACKAGE_TARNAME='python'
PACKAGE_URL=''
PACKAGE_VERSION='2.7'
PATH_SEPARATOR=':'
PKG_CONFIG=''
PYTHONFRAMEWORK=''
PYTHONFRAMEWORKDIR='no-framework'
PYTHONFRAMEWORKIDENTIFIER='org.python.python'
PYTHONFRAMEWORKINSTALLDIR=''
PYTHONFRAMEWORKPREFIX=''
RANLIB='arm-linux-androideabi-ranlib'
RUNSHARED=''
SGI_ABI=''
SHELL='/bin/bash'
SHLIBS=''
SIGNAL_OBJS=''
SO=''
SOVERSION='1.0'
SRCDIRS=''
SVNVERSION=''
THREADHEADERS=''
THREADOBJ=''
TRUE=''
UNICODE_OBJS=''
UNIVERSALSDK=''
UNIVERSAL_ARCH_FLAGS=''
USE_SIGNAL_MODULE=''
USE_THREAD_MODULE=''
VERSION='2.7'
ac_ct_CC=''
bindir='${exec_prefix}/bin'
build_alias=''
datadir='${datarootdir}'
datarootdir='${prefix}/share'
docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
dvidir='${docdir}'
exec_prefix='NONE'
host_alias='arm-eabi'
htmldir='${docdir}'
includedir='${prefix}/include'
infodir='${datarootdir}/info'
libdir='${exec_prefix}/lib'
libexecdir='${exec_prefix}/libexec'
localedir='${datarootdir}/locale'
localstatedir='${prefix}/var'
mandir='${datarootdir}/man'
oldincludedir='/usr/include'
pdfdir='${docdir}'
prefix='/home/pawel/python-for-android/build/python-install'
program_transform_name='s,x,x,'
psdir='${docdir}'
sbindir='${exec_prefix}/sbin'
sharedstatedir='${prefix}/com'
sysconfdir='${prefix}/etc'
target_alias=''
## ----------- ##
## confdefs.h. ##
## ----------- ##
/* confdefs.h */
#define _GNU_SOURCE 1
#define _NETBSD_SOURCE 1
#define __BSD_VISIBLE 1
#define _BSD_TYPES 1
#define _DARWIN_C_SOURCE 1
#define _XOPEN_SOURCE 600
#define _XOPEN_SOURCE_EXTENDED 1
#define _POSIX_C_SOURCE 200112L
configure: exit 77
That is probbably the most intresting part:
configure:3585: checking whether the C compiler works
configure:3607: ccache arm-linux-androideabi-gcc -DANDROID -mandroid -fomit-frame-pointer --sysroot /home/pawel/.buildozer/android/platform/android-ndk-r9c//platforms/android-21/arch-arm -DANDROID -mandroid -fomit-frame-pointer --sysroot /home/pawel/.buildozer/android/platform/android-ndk-r9c//platforms/android-21/arch-arm -lm conftest.c >&5
/home/pawel/.buildozer/android/platform/android-ndk-r9c/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.8/../../../../arm-linux-androideabi/bin/ld: error: cannot open crtbegin_dynamic.o: No such file or directory
/home/pawel/.buildozer/android/platform/android-ndk-r9c/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.8/../../../../arm-linux-androideabi/bin/ld: error: cannot open crtend_android.o: No such file or directory
/home/pawel/.buildozer/android/platform/android-ndk-r9c/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.8/../../../../arm-linux-androideabi/bin/ld: error: cannot find -lm
/home/pawel/.buildozer/android/platform/android-ndk-r9c/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.8/../../../../arm-linux-androideabi/bin/ld: error: cannot find -lc
/home/pawel/.buildozer/android/platform/android-ndk-r9c/toolchains/arm-linux-androideabi-4.8/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.8/../../../../arm-linux-androideabi/bin/ld: error: cannot find -ldl
collect2: error: ld returned 1 exit status
configure:3611: $? = 1
configure:3649: result: no
I've been googling for hours.. So now I've got to ask You
Envirement is set as:
export ANDROIDNDK="/home/user/.buildozer/android/platform/android-ndk-r9c/"
export ANDROIDSDK="/home/user/.buildozer/android/platform/android-sdk-21/"
export PATH=$ANDROIDNDK:$ANDROIDSDK/platform-tools:$ANDROIDSDK/tools:$PATH
export ANDROIDAPI=21
export ANDROIDNDKVER=r9c
I'm having an issue with attempting to build boost library for android. I have the apple command line tools installed and I downloaded boost. I kept getting this error:
In file included from libs/thread/src/pthread/thread.cpp:9:
In file included from ./boost/thread/detail/config.hpp:11:
In file included from ./boost/config.hpp:57:
In file included from ./boost/config/platform/macos.hpp:28:
./boost/config/posix_features.hpp:18:15: fatal error: 'unistd.h' file not found
# include <unistd.h>
^
1 error generated.
...failed gcc.compile.c++ bin.v2/libs/thread/build/gcc-android/release/link-static/runtime-link-static/threading-multi/pthread/thread.o...
gcc.compile.c++ bin.v2/libs/thread/build/gcc-android/release/link-static/runtime-link-static/threading-multi/pthread/once.o
"g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pedantic -Wno-unused-function --sysroot=/Users/mac/src/android/tc/sysroot -fPIC -O3 -Wextra -Wno-long-long -Wno-variadic-macros -Wunused-function -pedantic -DBOOST_ALL_NO_LIB=1 -DBOOST_ATOMIC_STATIC_LINK=1 -DBOOST_SYSTEM_STATIC_LINK=1 -DBOOST_THREAD_BUILD_LIB=1 -DBOOST_THREAD_DONT_USE_CHRONO -DBOOST_THREAD_POSIX -DNDEBUG -I"." -c -o "bin.v2/libs/thread/build/gcc-android/release/link-static/runtime-link-static/threading-multi/pthread/once.o" "libs/thread/src/pthread/once.cpp"
In file included from libs/thread/src/pthread/once.cpp:6:
In file included from ./boost/thread/detail/config.hpp:11:
In file included from ./boost/config.hpp:57:
In file included from ./boost/config/platform/macos.hpp:28:
./boost/config/posix_features.hpp:18:15: fatal error: 'unistd.h' file not found
# include <unistd.h>
^
1 error generated.
...failed gcc.compile.c++ bin.v2/libs/thread/build/gcc-android/release/link-static/runtime-link-static/threading-multi/pthread/once.o...
gcc.compile.c++ bin.v2/libs/thread/build/gcc-android/release/link-static/runtime-link-static/threading-multi/future.o
"g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -pedantic -Wno-unused-function --sysroot=/Users/mac/src/android/tc/sysroot -fPIC -O3 -Wextra -Wno-long-long -Wno-variadic-macros -Wunused-function -pedantic -DBOOST_ALL_NO_LIB=1 -DBOOST_ATOMIC_STATIC_LINK=1 -DBOOST_SYSTEM_STATIC_LINK=1 -DBOOST_THREAD_BUILD_LIB=1 -DBOOST_THREAD_DONT_USE_CHRONO -DBOOST_THREAD_POSIX -DNDEBUG -I"." -c -o "bin.v2/libs/thread/build/gcc-android/release/link-static/runtime-link-static/threading-multi/future.o" "libs/thread/src/future.cpp"
In file included from libs/thread/src/future.cpp:6:
In file included from ./boost/thread/detail/config.hpp:11:
In file included from ./boost/config.hpp:57:
In file included from ./boost/config/platform/macos.hpp:28:
./boost/config/posix_features.hpp:18:15: fatal error: 'unistd.h' file not found
# include <unistd.h>
^
1 error generated.
I got the same when building Boost 1.55.0 on Maverick with MacOSX10.7.sdk. So I added -I/usr/include to cflags and cxxflags options in my compile command. It resolved this problem. My full command.
./b2 -d+2 toolset=clang cxxflags="-stdlib=libc++ -isysroot=$SDKROOT -mmacosx-version-min=$MACOSX_DEPLOYMENT_TARGET -I/usr/include" cflags="-stdlib=libc++ -isysroot=$SDKROOT -mmacosx-version-min=$MACOSX_DEPLOYMENT_TARGET -I/usr/include" --layout=system --build-type=minimal --prefix=$QTDIR link=static runtime-link=static variant=release install