Qt5 super module
Go to file
Ville-Pekka Karhu 7863f9974c Replace macOS 12 ARM with macOS 13 ARM as a build target
Change-Id: I3c05bf3d33e3360b453417f48e7c7575abde837b
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
2023-08-01 12:25:24 +03:00
cmake CMake: Add support for a git qt-foreach subcommand for worktrees 2023-01-27 10:44:08 +01:00
coin Replace macOS 12 ARM with macOS 13 ARM as a build target 2023-08-01 12:25:24 +03:00
qt3d@6b043204f6 Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qt5compat@cef4ad9056 Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtactiveqt@5b00149a23 Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtbase@f0039bd517 Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtcanvas3d@1319e0965f Update submodules on 'dev' in qt5 2019-01-11 07:40:26 +00:00
qtcharts@f3927a7bdb Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtcoap@2218df5173 Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtconnectivity@8746a81c3c Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtdatavis3d@0d1579a76e Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtdeclarative@7ae07f49c1 Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtdoc@570f3c8c64 Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtfeedback@9ac8d8c272 Updated submodules. 2016-06-28 15:58:12 +00:00
qtgamepad@5fe6fd206f Update submodules on 'dev' in qt/qt5 2019-10-26 14:01:00 +02:00
qtgraphs@8a3b95fee0 Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtgrpc@a599e71a95 Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qthttpserver@28c22158ed Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtimageformats@be4a313774 Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtlanguageserver@ec4fba0aef Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtlocation@e7b91cc038 Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtlottie@6ed5f1777d Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtmqtt@859e30eba7 Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtmultimedia@afc196f36e Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtnetworkauth@ac19f31068 Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtopcua@ffeb7a4c90 Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtpim@02efef5ee6 Updated submodules. 2016-06-28 15:58:12 +00:00
qtpositioning@ec5066f650 Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtqa@d4afe2e3fc Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtquick3d@e366a3cbb1 Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtquick3dphysics@66f9ef1871 Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtquickeffectmaker@61c301e096 Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtquicktimeline@aeb6f4c8e3 Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtremoteobjects@1dba12b6e4 Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtrepotools@9c5662202d Update submodules on 'dev in qt/qt5' 2023-07-27 05:26:08 +00:00
qtscxml@c2a2fd91dd Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtsensors@5ddbb921b1 Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtserialbus@9c84bb8632 Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtserialport@7c258d7696 Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtshadertools@df2d3152f5 Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtspeech@ce5e238d5f Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtsvg@8e81678396 Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtsystems@434af789f0 Updated submodules. 2016-06-28 15:58:12 +00:00
qttools@568e13de16 Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qttranslations@77a5a63463 Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtvirtualkeyboard@6eededefeb Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtwayland@33cb87ac25 Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtwebchannel@020bbca016 Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtwebengine@3af75992d2 Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtwebglplugin@531fb30d53 Update submodules on 'dev' in qt/qt5 2019-10-26 14:01:00 +02:00
qtwebsockets@2a4663341d Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtwebview@8594f5eaf1 Update submodules on 'dev in qt/qt5' 2023-07-29 02:33:05 +00:00
qtxmlpatterns@05ab444844 Update submodules on 'dev' in qt/qt5 2019-10-26 14:01:00 +02:00
.commit-template Add Pick-to footer for cherry-pick bot to commit template 2020-04-20 11:04:27 +02:00
.gitattributes Turn off line ending conversion for .commit-template 2017-07-21 05:44:28 +00:00
.gitignore Add file names to .gitignore 2023-07-20 20:13:40 +03:00
.gitmodules Add qtmultimedia as a recommended dependency for qt3d 2023-06-30 06:48:52 +00:00
.tag Update the git-archive export options 2012-09-05 14:33:37 +02:00
CMakeLists.txt CMake: Don't load QtAutoDetect for top-level standalone tests 2023-07-08 08:49:19 +02:00
LICENSE.GPL2 Replace LGPL2.1 only header with LGPL3 one 2021-12-19 19:47:15 +00:00
LICENSE.GPL3 Replace LGPL2.1 only header with LGPL3 one 2021-12-19 19:47:15 +00:00
LICENSE.GPL3-EXCEPT Change license of top-level configure, configure.bat 2020-09-28 12:39:17 +02:00
LICENSE.LGPL3 Replace LGPL2.1 only header with LGPL3 one 2021-12-19 19:47:15 +00:00
LICENSE.QT-LICENSE-AGREEMENT Update Appendix 9 in LICENSE.QT-LICENSE-AGREEMENT 2023-05-18 11:17:13 +00:00
README.git Update README.git to mention Qt 6 2022-06-23 08:18:48 +02:00
README.md Remove CMake and Ninja version requirements from README 2023-06-26 16:38:02 +02:00
_clang-format clang-format: codify some of our conventions 2022-09-28 11:42:29 +02:00
configure configure: Let shell deal with errexit and xtrace 2021-03-18 12:45:24 +01:00
configure.bat Change license of top-level configure, configure.bat 2020-09-28 12:39:17 +02:00
configure.json automatically launch new configure system in top-level builds 2016-09-15 06:52:35 +00:00
init-repository init-repository: Fix wrong remote URLs in cloned submodules 2023-06-12 12:10:34 +00:00

README.md

HOW TO BUILD Qt 6

Synopsis

System requirements

  • C++ compiler supporting the C++17 standard
  • CMake
  • Ninja
  • Python 3

For more details, see also https://doc.qt.io/qt-6/build-sources.html

Linux, Mac:

cd <path>/<source_package>
./configure -prefix $PWD/qtbase
cmake --build .

Windows:

  1. Open a command prompt.
  2. Ensure that the following tools can be found in the path:
cd <path>\<source_package>
configure -prefix %CD%\qtbase
cmake --build .

More details follow.

Build!

Qt is built with CMake, and a typical configure && cmake --build . build process is used.

If Ninja is installed, it is automatically chosen as CMake generator.

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:

./configure -prefix $PWD/qtbase
cmake --build .

Example for a developer build: (enables more autotests, builds debug version of libraries, ...)

./configure -developer-build
cmake --build .

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 a ninja <repo-name>/all. For example, to build only qtdeclarative, and the modules it depends on:

./configure
ninja qtdeclarative/all

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

See http://wiki.qt.io/Building_Qt_6_from_Git and README.git 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.