Сборка Qt для Android, неподдерживаемая опция '-fPIC' для цели 'x86_64-w64-windows-gnu' - PullRequest
0 голосов
/ 20 октября 2019

Я пытаюсь собрать Qt для Android, следуя этим инструкциям . Моя сборка завершается с ошибкой: «clang ++. Exe: error: неподдерживаемая опция« -fPIC »для цели« x86_64-w64-windows-gnu »» (см. config.log ниже).

Для того, что кажетсябыть или такой же или связанной с этим проблемой в этом посте предлагает убрать флаг -fPIC. Я не знаю, возможно ли это для сборки Qt. (Я также не знаю, как это попробовать.)

config.log

Command line: -xplatform android-clang --disable-rpath -nomake tests -nomake examples -android-ndk C:/Users/Adam/AppData/Local/Android/Sdk/android-ndk -android-sdk C:/Users/Adam/AppData/Local/Android/Sdk -no-warnings-are-errors -android-arch armeabi-v71 -verbose
executing config test verifyspec
+ cd /d C:\Qt\5.13.0\Src\config.tests\verifyspec && C:\Qt\5.13.0\Src\qtbase\bin\qmake.exe "CONFIG -= qt debug_and_release app_bundle lib_bundle" "CONFIG += shared warn_off console single_arch" -early "CONFIG += cross_compile" C:/Qt/5.13.0/Src/qtbase/config.tests/verifyspec
+ cd /d C:\Qt\5.13.0\Src\config.tests\verifyspec && set MAKEFLAGS=& mingw32-make clean && set MAKEFLAGS=& mingw32-make
> del verifyspec.obj
> Could Not Find C:\Qt\5.13.0\Src\config.tests\verifyspec\verifyspec.obj
> del *~ core *.core
> Could Not Find C:\Qt\5.13.0\Src\config.tests\verifyspec\*~
> C:/Users/Adam/AppData/Local/Android/Sdk/android-ndk/toolchains/llvm/prebuilt/windows-x86_64/bin/clang++ -c -D__ANDROID_API__=21 -gcc-toolchain C:/Users/Adam/AppData/Local/Android/Sdk/android-ndk/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64 -fno-limit-debug-info -DANDROID_HAS_WSTRING --sysroot=C:/Users/Adam/AppData/Local/Android/Sdk/android-ndk/sysroot -isystem C:/Users/Adam/AppData/Local/Android/Sdk/android-ndk/sysroot/usr/include/arm-linux-androideabi -isystem C:/Users/Adam/AppData/Local/Android/Sdk/android-ndk/sources/cxx-stl/llvm-libc++/include -isystem C:/Users/Adam/AppData/Local/Android/Sdk/android-ndk/sources/android/support/include -isystem C:/Users/Adam/AppData/Local/Android/Sdk/android-ndk/sources/cxx-stl/llvm-libc++abi/include -fstack-protector-strong -DANDROID -O2 -O2 -fPIC  -IC:\Qt\5.13.0\Src\qtbase\config.tests\verifyspec -I. -IC:\Qt\5.13.0\Src\qtbase\mkspecs\android-clang -o verifyspec.obj C:\Qt\5.13.0\Src\qtbase\config.tests\verifyspec\verifyspec.cpp
> clang++.exe: error: unsupported option '-fPIC' for target 'x86_64-w64-windows-gnu'
> mingw32-make: *** [Makefile:180: verifyspec.obj] Error 1

FWIW, в остальном я могу создавать приложения для Android, в том числе с NDK, в системе,(Также настольные приложения Qt.)

1 Ответ

0 голосов
/ 21 октября 2019

Эта ошибка, по-видимому, возникла в результате неверной переменной среды.

set "ANDROID_TARGET_ARCH=armeabi-v71"

Должно было быть:

set "ANDROID_TARGET_ARCH=armeabi-v7a"
...