IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Qt for Android - Building from Source

How to configure and build Qt for Android directly from source.

Article lu   fois.

L'auteur

Liens sociaux

Viadeo Twitter Facebook Share on Google+   

Qt for Android - Building from Source

This page describes the process of configuring and building Qt for Android. To download and install a pre-built Qt for Android, follow the instructions on the Getting Started with Qt page.

Prerequisites

To build Qt for Android from source please ensure all requirements from Getting Started with Qt for Android are met before continuing.

Windows

Building Qt for Android on Windows also requires the following software:

  • MinGW 11.2 toolchain

  • Perl

Qt for Android does not support building from source with Microsoft Visual C++ (MSVC).

Install the requirements, and set the PATH to include the newly installed binaries:

 
Sélectionnez
set MINGW_ROOT=<MINGW_ROOT_PATH>\bin
set PERL_ROOT=<PERL_ROOT_PATH>\bin
set PATH=%MINGW_ROOT%;%PERL_ROOT%;%PATH%

To verify the installation, run:

 
Sélectionnez
where mingw32-make.exe

The command should list mingw32-make.exe under the path <MINGW_ROOT> first.

Getting the Sources

You can download the Qt sources from the Qt Downloads page, or follow the wiki guide for Getting the source code.

Configuring

Qt 6 allows building Qt for Android from source code using CMake. Qt 6 keeps the same configure script from Qt 5. The main difference is that Qt for Android is dependent on a host Qt build, which means to build Qt for Android, you need to build Qt for the desktop platform used as a host (for example Linux, macOS, or Windows).

To configure Qt for Android, create a shadow build directory to keep the source directory clean:

 
Sélectionnez
mkdir &lt;path_to_build_dir&gt;/build-qt
cd &lt;path_to_build_dir&gt;/build-qt

And then run the configure script:

 
Sélectionnez
&lt;path_to_qt_source&gt;/configure -platform android-clang -prefix &lt;/path/to/install&gt; -android-ndk $ANDROID_NDK_ROOT -android-sdk $ANDROID_SDK_ROOT -qt-host-path &lt;path_to_host_qt_installation&gt;

Architectures

Qt for Android supports the following ABIs:

The following configurations are supported in this Qt release:

Distribution

Architecture

Compiler

Notes

Android 6.0 or later (API level 23 or higher)

armv7a, x86, arm64-v8, and x86_64

Clang 12.0.8 (NDK r23b) as provided by Google

For JDK versions see Java Development Kit (JDK)

Qt user apps require using the same NDK r23b version used for building the official Qt for Android libraries. A different version might be missing the symbols for __emutls_get_address.

To choose the ABI to build for, use the -android-abis feature of the configure script.

6.4 does not yet support being built for multiple ABIs at the same time.

Advanced Configure Arguments

Qt for Android contains Java code which is compiled into *.jar files with javac. To set the javac version for source and target, use -android-javac-source and -android-javac-target respectively:

 
Sélectionnez
-android-javac-source 8 -android-javac-target 8

To build Qt as a developer build instead of a prefix build, use the following instead of -prefix argument:

 
Sélectionnez
-developer-build

Qt Configure Options contains more information about the configure options.

Building

To build the configured Qt code, run the following command:

 
Sélectionnez
cmake --build . --parallel

Installing

Now, to install Qt, run the following command:

 
Sélectionnez
cmake --install .

On Unix based OSes you should prefix the install command with the sudo command.

If you haven't provided the --prefix <install-dir> configure option, the installation is placed under /usr/local/Qt-<version>.

Vous avez aimé ce tutoriel ? Alors partagez-le en cliquant sur les boutons suivants : Viadeo Twitter Facebook Share on Google+