Building qt-android on windows

From Qt Wiki
Revision as of 07:16, 10 February 2015 by Maintenance script (talk | contribs)
Jump to navigation Jump to search

Building Qt/Android on Windows

Tested last time on branch 5.4 2015-01-22

Note, it is not currently possible to use Microsoft’s compilers to build the Windows host tools for Qt Android.

—————————— Configuration ——————————

  • Install the latest Perl:
    http://strawberryperl.com/
    Select Destination folder (we’ll call this <PERL_ROOT>, and refer similarly to other install locations).
  • Install the latest Android SDK (tools only):
    http://developer.android.com/sdk/index.html
    Run the Android SDK Manager and install the latest version of “SDK Platform”, “Google APIs” and “build-tools” in <ANDROID_SDK_PATH>
  • Open cmd.exe window and perform some checks:
    Ensure “where gcc.exe” lists <MINGW_ROOT>\bin\gcc.exe first (before <PERL_ROOT>\c\bin\gcc.exe)
    Ensure “where mingw32-make.exe” lists <MINGW_ROOT>\bin\mingw32-make.exe first.
    Ensure “where perl.exe” lists <PERL_ROOT>\perl\bin\perl.exe first.
    Ensure “where javac.exe” lists <JDK_ROOT>\bin first.
  • Add some environment variables:
    set “ANDROID_API_VERSION=android-21”
    set “ANDROID_SDK_ROOT=<ANDROID_SDK_PATH>”
    set “ANDROID_TARGET_ARCH=armeabi-v7a”
    set “ANDROID_BUILD_TOOLS_REVISION=21.1.2”
    set “ANDROID_NDK_PATH=<ANDROID_NDK_PATH>”
    set “ANDROID_TOOLCHAIN_VERSION=4.9”
    set “ANDROID_NDK_HOST=windows-x86_64”
    or
    set “ANDROID_NDK_HOST=windows”
    .. depending on which NDK you downloaded.

—————————— Cloning ——————————

  • Make the root folder for the Qt/Android build:
    Make sure there are no spaces in this path and that it doesn’t contain too many characters.
    I went for “C:\work\build”

—————————— Build steps ——————————

..where <N> is the number of parallel jobs your system can optimally exploit. If you have trouble, remove the -j<N>, and try again.

—————————— Finally ——————————

You can also build Qt/Android from the MSYS shell – the one from mingw-builds that you already downloaded – following much the same procedure and using exactly the same software. This is currently left as an exercise for the reader.