Compiling Qt 5.2.1 for android on Windows 7 (x86 toolchain)



  • Hi,

    im having some issue here compiling Qt 5.2.1 for Android on Win7 uning the official Android SDK and the NDK from http://code.google.com/p/mingw-and-ndk as proposed by the Wiki (Qt5ForAndroidBuilding).
    I keep consistently running into the following compiler error:
    @
    mingw32-make[2]: Entering directory 'c:/qt-build/qt5y/qt5/qtwebkit/Source/WTF' [...]
    [...] -o .obj/wtf/ArrayBuffer.obj wtf/ArrayBuffer.cpp
    In file included from ./wtf/PassRefPtr.h:25:0,
    from ./wtf/RefPtr.h:29,
    from ./wtf/HashFunctions.h:24,
    from ./wtf/HashTraits.h:24,
    from ./wtf/HashTable.h:28,
    from ./wtf/HashSet.h:25,
    from wtf/ArrayBuffer.h:29,
    from wtf/ArrayBuffer.cpp:27:
    ./wtf/NullPtr.h:52:1: warning: identifier 'nullptr' is a keyword in C++11 [-Wc++0x-compat]
    In file included from ./wtf/Threading.h:66:0,
    from ./wtf/HashTable.h:30,
    from ./wtf/HashSet.h:25,
    from wtf/ArrayBuffer.h:29,
    from wtf/ArrayBuffer.cpp:27:
    ./wtf/Atomics.h: In function 'int64_t WTF::atomicIncrement(volatile int64_t*)':
    ./wtf/Atomics.h:121:16: error: redefinition of 'int64_t WTF::atomicIncrement(volatile int64_t*)'
    ./wtf/Atomics.h:107:16: error: 'int64_t WTF::atomicIncrement(volatile int64_t*)' previously defined here
    ./wtf/Atomics.h: In function 'int64_t WTF::atomicDecrement(volatile int64_t*)':
    ./wtf/Atomics.h:122:16: error: redefinition of 'int64_t WTF::atomicDecrement(volatile int64_t*)'
    ./wtf/Atomics.h:108:16: error: 'int64_t WTF::atomicDecrement(volatile int64_t*)' previously defined here
    Makefile.WTF:1234: recipe for target '.obj/wtf/ArrayBuffer.obj' failed
    mingw32-make[2]: *** [.obj/wtf/ArrayBuffer.obj] Error 1
    mingw32-make[2]: Leaving directory 'c:/qt-build/qt5y/qt5/qtwebkit/Source/WTF'
    Makefile:45: recipe for target 'sub-Source-WTF-WTF-pro-make_first-ordered' failed
    mingw32-make[1]: *** [sub-Source-WTF-WTF-pro-make_first-ordered] Error 2
    mingw32-make[1]: Leaving directory 'c:/qt-build/qt5y/qt5/qtwebkit'
    Makefile:423: recipe for target 'module-qtwebkit-make_first' failed
    mingw32-make: *** [module-qtwebkit-make_first] Error 2@

    Config Command was
    @
    configure.bat -platform win32-g++ -opengl es2 -xplatform android-g++ -android-ndk C:\Android\ndk\android-ndk-r8e-ma-windows-x86\android-ndk-r8e -android-sdk C:\Android\sdk -android-toolchain-version 4.7 -opensource -confirm-license -nomake tests -nomake examples
    @
    Environment is
    @
    set "ANDROID_NDK_PLATFORM=android-9"
    set "ANDROID_TARGET_ARCH=armeabi-v7a"
    set "ANDROID_BUILD_TOOLS_REVISION=17.0.0"
    set "ANDROID_NDK_HOST=windows"
    @
    and Path looks like this:
    @
    C:\Python33;C:\Python33\Scripts;C:\Program Files (x86)\Common Files\Intel\OpenCL\bin\x64;C:\Program Files (x86)\Intel\OpenCL SD
    K\3.2\bin\x64;C:\Program Files (x86)\Intel\OpenCL SDK\3.2\bin\x86;C:\Program Files (x86)\Intel\iCLS Client;C:\Program Files\Int
    el\iCLS Client;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0;C:\Program F
    iles\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program
    Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components
    IPT;C:\Program Files (x86)\ATI Technologies\ATI.ACE\Core-Static;C:\Program Files\Microsoft SQL Server\110\Tools\Binn;C:\strawbe
    rry\perl\bin;C:\Program Files (x86)\Git\cmd;C:\Program Files\TortoiseGit\bin;C:\Program Files (x86)\CMake 2.8\bin;C:\mingw-build
    s\msys\bin;C:\mingw-builds\mingw32\bin;C:\strawberry\c\bin;C:\strawberry\perl\site\bin;C:\Java\jdk1.7.0_51\bin;C:\Users\Andreas
    AppData\Roaming\Python\Scripts
    @


  • Moderators

    You need to add this to your configure:
    @
    -skip webkit
    @

    That module is not supported on Android. I recommend skipping QtQuick1, too (it is deprecated).


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.