Qt5 super module
Go to file
Simo Fält a2d926fdd1 Provisioning: Copy backported .deb files for sbuild
These are required to successfully build debian packages for
Ubuntu Focal.

Change-Id: I708f3716ba8d1251bfae22da325e8e27f0fb80fe
Reviewed-by: Toni Saario <toni.saario@qt.io>
(cherry picked from commit 5b30b2f432)
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
2023-09-11 10:03:42 +03:00
LICENSES Add license directory and update remaining license format in coin 2023-09-02 13:58:24 +02:00
cmake CMake: Add support for a git qt-foreach subcommand for worktrees 2023-01-27 10:44:08 +01:00
coin Provisioning: Copy backported .deb files for sbuild 2023-09-11 10:03:42 +03:00
qt3d@2e943de27f Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qt5compat@0e42459a7b Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtactiveqt@893813488c Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtbase@a323f05c5e Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtcanvas3d@1319e0965f Update submodules on 'dev' in qt5 2019-01-11 07:40:26 +00:00
qtcharts@8bea01f15d Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtcoap@c37bd05ec7 Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtconnectivity@6bbc781f21 Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtdatavis3d@9999afa98e Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtdeclarative@007c3719e3 Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtdoc@f2f8a4ba58 Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +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@63a50753c4 Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtgrpc@1a8f794782 Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qthttpserver@c9eb8bc732 Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtimageformats@148efc38e5 Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtlanguageserver@1dd2334bea Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtlocation@6a21ec46f5 Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtlottie@c344d46cef Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtmqtt@795526146c Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtmultimedia@ce88211898 Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtnetworkauth@5d5a81455b Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtopcua@1ee77097c9 Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtpim@02efef5ee6 Updated submodules. 2016-06-28 15:58:12 +00:00
qtpositioning@68b8b97b74 Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtqa@2a13d25893 Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtquick3d@afb2144d9d Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtquick3dphysics@ad2b4b3e49 Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtquickeffectmaker@589def2c25 Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtquicktimeline@c4d74df9fb Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtremoteobjects@b08ed9e39a Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtrepotools@5eb547fab9 Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtscxml@21d17fcf1a Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtsensors@2427f88f1d Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtserialbus@12e2d3933a Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtserialport@fad1e9092a Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtshadertools@4a86a07b44 Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtspeech@4c8e72abf3 Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtsvg@d868834fca Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtsystems@434af789f0 Updated submodules. 2016-06-28 15:58:12 +00:00
qttools@6e358180b1 Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qttranslations@ec048ea644 Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtvirtualkeyboard@7a7944ee10 Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtwayland@20135e2c9b Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtwebchannel@86adfa5e24 Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtwebengine@dba797ac78 Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtwebglplugin@531fb30d53 Update submodules on 'dev' in qt/qt5 2019-10-26 14:01:00 +02:00
qtwebsockets@90fedd6e82 Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +00:00
qtwebview@8f9e30dba3 Update submodules on 'dev in qt/qt5' 2023-09-01 18:18:36 +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: Remove unused variable 2023-09-05 18:29:18 +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 Add .proto files format to _clang-format 2023-09-11 09:03:26 +02:00
configure Add license directory and update remaining license format in coin 2023-09-02 13:58:24 +02:00
configure.bat Add license directory and update remaining license format in coin 2023-09-02 13:58:24 +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.