Qt5 super module
Go to file
Heikki Halmet 1ebec86732 Remove packaging flag from CentOS targets
This will also remove CentOS target under QtCreator
and RHEL's Insignificant flags from submodules

Task-number: QTQAINFRA-4416
Change-Id: I2e6d910dfbba7a7903b149f5cf0bc3386cd4e3e2
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2021-04-23 14:32:45 +03:00
cmake Fix ignored submodules if a submodule does not have a dependency.yaml 2021-03-31 10:56:39 +02:00
coin Remove packaging flag from CentOS targets 2021-04-23 14:32:45 +03:00
qt3d@ee34f20ab6 Update additional library sha1's to qt5.git 2021-04-22 11:39:14 +03:00
qt5compat@989cf9a58a Update submodules on 'dev' in qt/qt5 2021-04-22 00:59:08 +03:00
qtactiveqt@bed7b6cdd5 Update additional library sha1's to qt5.git 2021-04-22 11:39:14 +03:00
qtandroidextras@5d2d396dc4 Add QtConnectivity and QtAndroidExtras to addon modules 2021-02-19 13:40:51 +01:00
qtbase@4345056630 Update submodules on 'dev' in qt/qt5 2021-04-22 00:59:08 +03:00
qtcanvas3d@1319e0965f Update submodules on '5.12' in qt5 2019-02-05 19:16:28 +00:00
qtcharts@b18aff8da6 Update additional library sha1's to qt5.git 2021-04-22 11:39:14 +03:00
qtcoap@7e5e007b9b Update additional library sha1's to qt5.git 2021-04-22 11:39:14 +03:00
qtconnectivity@40f9285979 Add QtConnectivity and QtAndroidExtras to addon modules 2021-02-19 13:40:51 +01:00
qtdatavis3d@66fba36bd8 Update additional library sha1's to qt5.git 2021-04-22 11:39:14 +03:00
qtdeclarative@93bd34b78f Update submodules on 'dev' in qt/qt5 2021-04-22 00:59:08 +03:00
qtdoc@37f8413217 Update submodules on 'dev' in qt/qt5 2021-04-22 00:59:08 +03:00
qtfeedback@9ac8d8c272 Updated submodules. 2016-06-28 15:58:12 +00:00
qtgamepad@5fe6fd206f Update submodules on '5.15' in qt/qt5 2020-02-07 08:12:38 +01:00
qtgraphicaleffects@bbaccc30f7 Update submodules on 'dev' in qt/qt5 2020-07-04 15:11:41 +03:00
qtimageformats@dcc601a0af Update additional library sha1's to qt5.git 2021-04-22 11:39:14 +03:00
qtlocation@1c2b781dc3 Add QtLocation to addon modules 2021-03-05 18:16:04 +01:00
qtlottie@5f4517b55c Update additional library sha1's to qt5.git 2021-04-22 11:39:14 +03:00
qtmacextras@e8a235fb0e Update submodules on '5.15' in qt/qt5 2020-02-07 08:12:38 +01:00
qtmqtt@72bdbb7fa7 Update additional library sha1's to qt5.git 2021-04-22 11:39:14 +03:00
qtmultimedia@bb64e9df20 Update submodules on '5.15' in qt/qt5 2020-02-25 08:24:28 +01:00
qtnetworkauth@94d037bb2a Update additional library sha1's to qt5.git 2021-04-22 11:39:14 +03:00
qtopcua@4be6408e38 Update additional library sha1's to qt5.git 2021-04-22 11:39:14 +03:00
qtpim@02efef5ee6 Updated submodules. 2016-06-28 15:58:12 +00:00
qtpurchasing@29b8e7a664 Update submodules on '5.15' in qt/qt5 2020-02-07 08:12:38 +01:00
qtqa@d2454e015b Update submodules on 'dev' in qt/qt5 2021-04-22 00:59:08 +03:00
qtquick3d@86ba4c1f68 Update submodules on 'dev' in qt/qt5 2021-04-22 00:59:08 +03:00
qtquickcontrols@d259898453 Update submodules on '5.15' in qt/qt5 2020-02-25 08:24:28 +01:00
qtquickcontrols2@339c627706 Update submodules on 'dev' in qt/qt5 2021-04-22 00:59:08 +03:00
qtquicktimeline@75df361940 Update submodules on 'dev' in qt/qt5 2021-04-22 00:59:08 +03:00
qtremoteobjects@c603dac09f Update submodules on '5.15' in qt/qt5 2020-02-07 08:12:38 +01:00
qtrepotools@e97f6a4d5a Update submodules on 'dev' in qt/qt5 2021-03-24 04:53:35 +02:00
qtscxml@345f974fa2 Update additional library sha1's to qt5.git 2021-04-22 11:39:14 +03:00
qtsensors@8eb278dcb1 Update submodules on 'dev' in qt/qt5 2021-04-22 00:59:08 +03:00
qtserialbus@ac853f1fd0 Add QtSerialBus as additional library 2021-03-09 09:16:10 +01:00
qtserialport@98d03b9cdf Add QtSerialPort as addon module 2021-03-04 09:46:01 +01:00
qtshadertools@a0576dd1f9 Update submodules on 'dev' in qt/qt5 2021-04-22 00:59:08 +03:00
qtspeech@25c1b5b74c Update submodules on '5.15' in qt/qt5 2020-02-07 08:12:38 +01:00
qtsvg@a4c8e4a26d Update submodules on 'dev' in qt/qt5 2021-04-22 00:59:08 +03:00
qtsystems@434af789f0 Updated submodules. 2016-06-28 15:58:12 +00:00
qttools@ed92701d67 Update submodules on 'dev' in qt/qt5 2021-04-22 00:59:08 +03:00
qttranslations@cab9d06e9c Update submodules on 'dev' in qt/qt5 2021-04-22 00:59:08 +03:00
qtvirtualkeyboard@982a9f2027 Update additional library sha1's to qt5.git 2021-04-22 11:39:14 +03:00
qtwayland@7dec49322f Update submodules on 'dev' in qt/qt5 2021-04-22 00:59:08 +03:00
qtwebchannel@e1c7e03643 Update submodules on '5.15' in qt/qt5 2020-02-07 08:12:38 +01:00
qtwebengine@cda7600225 Update submodules on '5.15' in qt/qt5 2020-02-25 08:24:28 +01:00
qtwebglplugin@531fb30d53 Update submodules on '5.15' in qt/qt5 2020-02-25 08:24:28 +01:00
qtwebsockets@ec60f42c57 Update submodules on 'dev' in qt/qt5 2020-07-04 15:11:41 +03:00
qtwebview@dfbe1343cd Update submodules on '5.15' in qt/qt5 2020-02-07 08:12:38 +01:00
qtwinextras@18cf8f3120 Update submodules on '5.15' in qt/qt5 2020-02-25 08:24:28 +01:00
qtx11extras@76e206e0a3 Update submodules on '5.15' in qt/qt5 2020-02-07 08:12:38 +01:00
qtxmlpatterns@05ab444844 Update submodules on '5.15' in qt/qt5 2020-02-25 08:24:28 +01: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 *.pro.user* to .gitignore 2017-05-25 21:34:29 +00:00
.gitmodules Drop unnecessary qttools dependency from m2m protocols 2021-04-22 11:39:14 +03:00
.tag Update the git-archive export options 2012-09-05 14:33:37 +02:00
CMakeLists.txt CMake: Use qtbase's version as the top-level project version 2021-04-15 13:27:10 +02:00
LICENSE.FDL Add license files mandated by (L)GPL. 2013-05-30 22:32:43 +02:00
LICENSE.GPL3-EXCEPT Change license of top-level configure, configure.bat 2020-09-28 12:39:17 +02:00
LICENSE.GPLv2 Expand license scope from "Qt GUI Toolkit" to "Qt Toolkit" 2016-06-20 16:35:21 +00:00
LICENSE.GPLv3 Expand license scope from "Qt GUI Toolkit" to "Qt Toolkit" 2016-06-20 16:35:21 +00:00
LICENSE.LGPLv3 Expand license scope from "Qt GUI Toolkit" to "Qt Toolkit" 2016-06-20 16:35:21 +00:00
LICENSE.LGPLv21 Expand license scope from "Qt GUI Toolkit" to "Qt Toolkit" 2016-06-20 16:35:21 +00:00
LICENSE.QT-LICENSE-AGREEMENT Update enterprise license agreement v4.2.1 2019-12-18 07:20:13 +02:00
README.git Replace old qt-project.org wiki with wiki.qt.io 2015-04-16 09:42:01 +00:00
README.md Make README a proper Markdown file 2021-01-13 08:53:39 +01:00
_clang-format Update _clang-format definition 2019-12-18 09:55:55 +01: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 Update documentation for init-repository 2021-03-25 15:39:05 +01:00

README.md

HOW TO BUILD Qt6

Synopsis

System requirements

  • CMake 3.18 or later
  • Perl 5.8 or later
  • Python 2.7 or later
  • C++ compiler supporting the C++17 standard

It's recommended to have ninja 1.8 or later installed.

For other platform specific requirements, please see section "Setting up your machine" on: http://wiki.qt.io/Get_The_Source

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 /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.