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

Qt Compilation fail for android when using mingw32-make -j

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • P3: Somewhat important
    • None
    • 5.11
    • QPA
    • None
    • Windows 10

       
    • Android

    Description

      When building Qt 5.11 for Android(maybe other versions) on Windows if you try and use more than one job, the compilation will fail (on the first attempt).  If you try and run mingw32-make again a second time, it will continue.  It will of course fail again the next time you try and compile a .jar file so this can be quite frustrating.  Also it is possible to build if you dont use -j with make and it only builds serially.  Here is the first error you would get when building qtbase:

      PS Q:\Code\qt5-5.11-android\qtbase\src\android> mingw32-make.exe -j5
      cd jar\ && ( if not exist Makefile Q:\Code\qt5-5.11-android\qtbase\bin\qmake.exe -o Makefile Q:\Code\qt5-dev\qtbase\src\
      android\jar\jar.pro ) && Q:/Qt/Tools/mingw530_32/bin/mingw32-make -f Makefile
      mingw32-make[1]: Entering directory 'Q:/Code/qt5-5.11-android/qtbase/src/android/jar'
      javac -source 6 -target 6 -Xlint:unchecked -bootclasspath C:/Users/nezticle/AppData/Local/Android/sdk/platforms/android-
      16/android.jar -cp "Q:\Code\qt5-dev\qtbase\src\android\jar\src\;C:\Users\nezticle\AppData\Local\Android\sdk\platforms\an
      droid-16\android.jar" -d .classes Q:\Code\qt5-dev\qtbase\src\android\jar\src\org\qtproject\qt5\android\accessibility\QtA
      ccessibilityDelegate.java Q:\Code\qt5-dev\qtbase\src\android\jar\src\org\qtproject\qt5\android\accessibility\QtNativeAcc
      essibility.java Q:\Code\qt5-dev\qtbase\src\android\jar\src\org\qtproject\qt5\android\QtActivityDelegate.java Q:\Code\qt5
      -dev\qtbase\src\android\jar\src\org\qtproject\qt5\android\QtEditText.java Q:\Code\qt5-dev\qtbase\src\android\jar\src\org
      \qtproject\qt5\android\QtInputConnection.java Q:\Code\qt5-dev\qtbase\src\android\jar\src\org\qtproject\qt5\android\QtLay
      out.java Q:\Code\qt5-dev\qtbase\src\android\jar\src\org\qtproject\qt5\android\QtMessageDialogHelper.java Q:\Code\qt5-dev
      \qtbase\src\android\jar\src\org\qtproject\qt5\android\QtNative.java Q:\Code\qt5-dev\qtbase\src\android\jar\src\org\qtpro
      ject\qt5\android\QtNativeLibrariesDir.java Q:\Code\qt5-dev\qtbase\src\android\jar\src\org\qtproject\qt5\android\QtSurfac
      e.java Q:\Code\qt5-dev\qtbase\src\android\jar\src\org\qtproject\qt5\android\ExtractStyle.java Q:\Code\qt5-dev\qtbase\src
      \android\jar\src\org\qtproject\qt5\android\EditMenu.java Q:\Code\qt5-dev\qtbase\src\android\jar\src\org\qtproject\qt5\an
      droid\EditPopupMenu.java Q:\Code\qt5-dev\qtbase\src\android\jar\src\org\qtproject\qt5\android\CursorHandle.java
      Note: Some input files use or override a deprecated API.
      Note: Recompile with -Xlint:deprecation for details.
      del QtAndroid.jar
      Could Not Find Q:\Code\qt5-5.11-android\qtbase\src\android\jar\QtAndroid.jar
      jar cf QtAndroid.jar -C .classes .
      move QtAndroid.jar ..\..\..\jar\
      1 file(s) moved.
      mingw32-make[1]: Leaving directory 'Q:/Code/qt5-5.11-android/qtbase/src/android/jar'
      cd java\ && ( if not exist Makefile Q:\Code\qt5-5.11-android\qtbase\bin\qmake.exe -o Makefile Q:\Code\qt5-dev\qtbase\src
      \android\java\java.pro ) && Q:/Qt/Tools/mingw530_32/bin/mingw32-make -f Makefile
      mingw32-make[1]: Entering directory 'Q:/Code/qt5-5.11-android/qtbase/src/android/java'
      Q:/SDK/android-ndk-r10e/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64/bin/arm-linux-androideabi-g++ --sys
      root=Q:/SDK/android-ndk-r10e/platforms/android-16/arch-arm/ -Wl,-soname,libjava.so -Wl,--no-undefined -Wl,-z,noexecstack
      -shared -o libjava.so -LQ:/SDK/android-ndk-r10e/sources/cxx-stl/gnu-libstdc++/4.9/libs/armeabi-v7a -Lq:/sdk/android-
      ndk-r10e/toolchains/arm-linux-androideabi-4.9/prebuilt/windows-x86_64/bin/../lib/gcc/arm-linux-androideabi/4.9 -lgnustl_
      shared -lgcc -llog -lz -lm -ldl -lc
      xcopy /s /q /y /i Q:\Code\qt5-dev\qtbase\src\android\java\res Q:\Code\qt5-5.11-android\qtbase\src\android\java
      Invalid number of parameters
      Makefile:98: recipe for target 'libjava.so' failed
      mingw32-make[1]: *** [libjava.so] Error 4
      mingw32-make[1]: Leaving directory 'Q:/Code/qt5-5.11-android/qtbase/src/android/java'
      Makefile:89: recipe for target 'sub-java-make_first-ordered' failed
      mingw32-make: *** [sub-java-make_first-ordered] Error 2

      The error manifests itself as an erroneous xcopy error "Invalid number of parameters".  I suspect what happens is that it tries to copy the folders contents before the output exists.

      Just for reference here are my configure arguments:

      Q:\Code\qt5-dev\configure.bat -platform win32-g++ -xplatform android-g++ -android-ndk Q:/SDK/android-ndk-r10e -android-sdk C:/Users/nezticle/AppData/Local/Android/sdk -developer-build -nomake examples -nomake tests -commercial -confirm-license -skip qtcanvas3d -skip qtcharts -skip qtdatavis3d -skip qtenginio -skip qtfeedback -skip qtlocation -skip qtpim -skip qtquick1 -skip qtremoteobjects -skip qtscript -skip qtscxml -skip qtsensors -skip qtserialbus -skip qtserialport -skip qtspeech -skip qtsystems -skip qtvirtualkeyboard -skip qtwayland -skip qtwebchannel -skip qtwebengine -skip qtwebview

      Attachments

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

        Activity

          People

            rampe Rami Potinkara
            janichol Andy Nichols
            Veli-Pekka Heinonen Veli-Pekka Heinonen
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:

              Gerrit Reviews

                There are no open Gerrit changes