2022-10-19 09:23:27 +00:00
|
|
|
HOW TO BUILD Qt 6
|
|
|
|
=================
|
2021-01-11 15:28:51 +00:00
|
|
|
|
|
|
|
|
|
|
|
Synopsis
|
|
|
|
========
|
|
|
|
|
|
|
|
System requirements
|
2022-10-19 09:23:27 +00:00
|
|
|
-------------------
|
2021-01-11 15:28:51 +00:00
|
|
|
|
|
|
|
* C++ compiler supporting the C++17 standard
|
2023-06-26 13:40:49 +00:00
|
|
|
* CMake
|
|
|
|
* Ninja
|
2022-10-19 09:23:27 +00:00
|
|
|
* Python 3
|
2021-01-11 15:28:51 +00:00
|
|
|
|
2022-10-19 09:23:27 +00:00
|
|
|
For more details, see also https://doc.qt.io/qt-6/build-sources.html
|
2021-01-11 15:28:51 +00:00
|
|
|
|
|
|
|
Linux, Mac:
|
|
|
|
-----------
|
|
|
|
|
2021-10-28 00:33:18 +00:00
|
|
|
```
|
2021-01-11 15:28:51 +00:00
|
|
|
cd <path>/<source_package>
|
|
|
|
./configure -prefix $PWD/qtbase
|
|
|
|
cmake --build .
|
2021-10-28 00:33:18 +00:00
|
|
|
```
|
2021-01-11 15:28:51 +00:00
|
|
|
|
|
|
|
Windows:
|
|
|
|
--------
|
|
|
|
|
|
|
|
1. Open a command prompt.
|
|
|
|
2. Ensure that the following tools can be found in the path:
|
2024-12-02 07:17:20 +00:00
|
|
|
* Supported compiler (Visual Studio 2022 or later, or MinGW-builds gcc 13.1 or later)
|
2022-10-19 09:23:27 +00:00
|
|
|
* Python 3 ([https://www.python.org/downloads/windows/] or from Microsoft Store)
|
2021-01-11 15:28:51 +00:00
|
|
|
|
2021-10-28 00:33:18 +00:00
|
|
|
```
|
2021-01-11 15:28:51 +00:00
|
|
|
cd <path>\<source_package>
|
|
|
|
configure -prefix %CD%\qtbase
|
|
|
|
cmake --build .
|
2021-10-28 00:33:18 +00:00
|
|
|
```
|
2021-01-11 15:28:51 +00:00
|
|
|
|
|
|
|
More details follow.
|
|
|
|
|
2022-10-19 09:23:27 +00:00
|
|
|
|
2021-01-11 15:28:51 +00:00
|
|
|
Build!
|
|
|
|
======
|
|
|
|
|
|
|
|
Qt is built with CMake, and a typical
|
|
|
|
`configure && cmake --build .` build process is used.
|
|
|
|
|
2022-10-19 09:23:27 +00:00
|
|
|
If Ninja is installed, it is automatically chosen as CMake generator.
|
2021-01-11 15:28:51 +00:00
|
|
|
|
|
|
|
Some relevant configure options (see configure -help):
|
|
|
|
|
|
|
|
* `-release` Compile and link Qt with debugging turned off.
|
|
|
|
* `-debug` Compile and link Qt with debugging turned on.
|
|
|
|
|
|
|
|
Example for a release build:
|
|
|
|
|
2021-10-28 00:33:18 +00:00
|
|
|
```
|
2021-01-11 15:28:51 +00:00
|
|
|
./configure -prefix $PWD/qtbase
|
|
|
|
cmake --build .
|
2021-10-28 00:33:18 +00:00
|
|
|
```
|
2021-01-11 15:28:51 +00:00
|
|
|
|
|
|
|
Example for a developer build:
|
|
|
|
(enables more autotests, builds debug version of libraries, ...)
|
|
|
|
|
2021-10-28 00:33:18 +00:00
|
|
|
```
|
2021-01-11 15:28:51 +00:00
|
|
|
./configure -developer-build
|
|
|
|
cmake --build .
|
2021-10-28 00:33:18 +00:00
|
|
|
```
|
2021-01-11 15:28:51 +00:00
|
|
|
|
|
|
|
See output of `./configure -help` for documentation on various options to
|
|
|
|
configure.
|
|
|
|
|
|
|
|
The above examples will build whatever Qt modules have been enabled
|
|
|
|
by default in the build system.
|
|
|
|
|
|
|
|
It is possible to build selected repositories with their dependencies by doing
|
2021-10-28 00:33:18 +00:00
|
|
|
a `ninja <repo-name>/all`. For example, to build only qtdeclarative,
|
2021-01-11 15:28:51 +00:00
|
|
|
and the modules it depends on:
|
|
|
|
|
2021-10-28 00:33:18 +00:00
|
|
|
```
|
2021-01-11 15:28:51 +00:00
|
|
|
./configure
|
|
|
|
ninja qtdeclarative/all
|
2021-10-28 00:33:18 +00:00
|
|
|
```
|
2021-01-11 15:28:51 +00:00
|
|
|
|
|
|
|
This can save a lot of time if you are only interested in a subset of Qt.
|
|
|
|
|
|
|
|
|
|
|
|
Hints
|
|
|
|
=====
|
|
|
|
|
|
|
|
The submodule repository `qtrepotools` contains useful scripts for
|
|
|
|
developers and release engineers. Consider adding qtrepotools/bin
|
|
|
|
to your `PATH` environment variable to access them.
|
|
|
|
|
|
|
|
|
|
|
|
Building Qt from git
|
2022-10-19 09:23:27 +00:00
|
|
|
====================
|
|
|
|
|
2023-12-13 12:28:33 +00:00
|
|
|
See http://wiki.qt.io/Building_Qt_6_from_Git and [README.git](README.git)
|
2021-01-11 15:28:51 +00:00
|
|
|
for more information.
|
|
|
|
See http://wiki.qt.io/Qt_6 for the reference platforms.
|
|
|
|
|
|
|
|
|
|
|
|
Documentation
|
|
|
|
=============
|
|
|
|
|
|
|
|
After configuring and compiling Qt, building the documentation is possible by running
|
|
|
|
|
|
|
|
```
|
|
|
|
cmake --build . --target docs
|
|
|
|
```
|
|
|
|
|
|
|
|
After having built the documentation, you need to install it with the following
|
|
|
|
command:
|
|
|
|
|
|
|
|
```
|
|
|
|
cmake --build . --target install_docs
|
|
|
|
```
|
|
|
|
|
|
|
|
The documentation is installed in the path specified with the
|
|
|
|
configure argument `-docdir`.
|
|
|
|
|
|
|
|
Information about Qt's documentation is located in qtbase/doc/README
|
|
|
|
|
|
|
|
Note: Building the documentation is only tested on desktop platforms.
|