Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-70663

Qt build fails using Android ndk r18 (fine with r17)

    XMLWordPrintable

Details

    • Bug
    • Resolution: Duplicate
    • P2: Important
    • None
    • 5.11.2
    • Build System
    • None
    • Android

    Description

      Ndk r18 now has completely removed gcc.

      Building Qt now fails (the same build works fine with r17) quite early in the build on:

      Checking for valid makespec... 
      + cd /home/development/4suse42.3-android/qt-5.11.2-r18-arm/config.tests/verifyspec && /home/development/4suse42.3-android/qt-5.11.2-r18-arm/qtbase/bin/qmake "CONFIG -= qt debug_and_release app_bundle lib_bundle" "CONFIG += shared warn_off console single_arch" 'QMAKE_LIBDIR += /home/development/4suse42.3-android/sqlite-3.25.01.00-r18-api24-arm/install/lib' 'INCLUDEPATH += /home/development/4suse42.3-android/sqlite-3.25.01.00-r18-api24-arm/install/include /home/development/4suse42.3-android/openssl-1.1.0i-r18-api24-arm/include' -early "CONFIG += cross_compile" /home/development/qt-everywhere-src-5.11.2/qtbase/config.tests/verifyspec
      + cd /home/development/4suse42.3-android/qt-5.11.2-r18-arm/config.tests/verifyspec && MAKEFLAGS= /usr/bin/gmake
      > /home/development/4suse42.3-android/android-ndk-r18/toolchains/llvm/prebuilt/linux-x86_64/bin/clang++ -c -D__ANDROID_API__=19 -target armv7-none-linux-androideabi -gcc-toolchain /home/development/4suse42.3-android/android-ndk-r18/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64 -DANDROID_HAS_WSTRING --sysroot=/home/development/4suse42.3-android/android-ndk-r18/sysroot -isystem /home/development/4suse42.3-android/android-ndk-r18/sysroot/usr/include/arm-linux-androideabi -isystem /home/development/4suse42.3-android/android-ndk-r18/sources/cxx-stl/llvm-libc++/include -isystem /home/development/4suse42.3-android/android-ndk-r18/sources/android/support/include -isystem /home/development/4suse42.3-android/android-ndk-r18/sources/cxx-stl/llvm-libc++abi/include -fstack-protector-strong -DANDROID -march=armv7-a -mfloat-abi=softfp -mfpu=vfp -fno-builtin-memmove -mthumb -Oz -fPIC  -I/home/development/qt-everywhere-src-5.11.2/qtbase/config.tests/verifyspec -I. -I/home/development/4suse42.3-android/sqlite-3.25.01.00-r18-api24-arm/install/include -I/home/development/4suse42.3-android/openssl-1.1.0i-r18-api24-arm/include -I/home/development/qt-everywhere-src-5.11.2/qtbase/mkspecs/android-clang -o verifyspec.o /home/development/qt-everywhere-src-5.11.2/qtbase/config.tests/verifyspec/verifyspec.cpp
      > /home/development/4suse42.3-android/android-ndk-r18/toolchains/llvm/prebuilt/linux-x86_64/bin/clang++ -D__ANDROID_API__=19 -target armv7-none-linux-androideabi -gcc-toolchain /home/development/4suse42.3-android/android-ndk-r18/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64 -Wl,--exclude-libs,libgcc.a --sysroot=/home/development/4suse42.3-android/android-ndk-r18/platforms/android-19/arch-arm/ -Wl,-soname,libverifyspec.so -Wl,--no-undefined -Wl,-z,noexecstack -shared -o libverifyspec.so verifyspec.o   -L/home/development/4suse42.3-android/sqlite-3.25.01.00-r18-api24-arm/install/lib -L/home/development/4suse42.3-android/android-ndk-r18/sources/cxx-stl/llvm-libc++/libs/armeabi-v7a -lc++ -llog -lz -lm -ldl -lc
      > /home/development/4suse42.3-android/android-ndk-r18/toolchains/arm-linux-androideabi-4.9/prebuilt/linux-x86_64/lib/gcc/arm-linux-androideabi/4.9.x/../../../../arm-linux-androideabi/bin/ld: error: cannot find -lc++
      > clang++: error: linker command failed with exit code 1 (use -v to see invocation)
      > Makefile:66: recept voor doel 'libverifyspec.so' is mislukt
      > gmake: *** [libverifyspec.so] Fout 1
      Note: Also available for Linux: linux-clang linux-icc
      
      ERROR: Cannot compile a minimal program. The toolchain or QMakeSpec is broken.
      + exit 1
      

      Here's the configure used (that works for r17):

      ${QTSRCDIR}/configure \
              -release -commercial -confirm-license \
              -prefix $QTDIR \
              -sql-sqlite -system-sqlite -I${SQLITEDIR}/include -L${SQLITEDIR}/lib \
              -openssl -openssl-runtime -I${OPENSSLPATH}/include \
              -xplatform android-clang \
              -nomake tests -nomake examples \
              -android-sdk ${ANDROIDPATH}/android-sdk-${SDK} \
              -android-ndk ${ANDROIDPATH}/android-ndk-${NDK} \
              -android-ndk-host linux-x86_64 -android-toolchain-version 4.9 \
              -android-ndk-platform android-19 \
              -android-arch armeabi-v7a \
              -skip qttranslations -skip qtserialport \
              -no-warnings-are-errors -v || exit 1
      

      Attachments

        Issue Links

          No reviews matched the request. Check your Options in the drop-down menu of this sections header.

          Activity

            People

              buddenha Oswald Buddenhagen
              jirauser24743 user-678dd (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Gerrit Reviews

                  There are no open Gerrit changes