Qt5 super module
Go to file
Jani Heikkinen 21f55b70ed Add missing optional dependency for qtgrpc submodule
qtgrpc recommends qtdeclarative; add that one in .gitmodules as well;
the dependency were added in the module in
681d104f0d03f97681536d3691d170d7c06aab2b

Pick-to: 6.6 6.5
Change-Id: I325abc8453d26cf0d75425e806e3e0e7b182070a
Reviewed-by: Jukka Jokiniva <jukka.jokiniva@qt.io>
2023-06-14 07:19:46 +00:00
cmake CMake: Add support for a git qt-foreach subcommand for worktrees 2023-01-27 10:44:08 +01:00
coin Fix SetEnvVar for Debian 2023-06-14 09:19:43 +02:00
qt3d@300ed7b49b Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qt5compat@f56df29f31 Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtactiveqt@8cbb1f7777 Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtbase@f34c5215f4 Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtcanvas3d@1319e0965f Update submodules on 'dev' in qt5 2019-01-11 07:40:26 +00:00
qtcharts@2ae46ef08f Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtcoap@50acd19b54 Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtconnectivity@5353e73c51 Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtdatavis3d@0a1e9dce13 Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtdeclarative@b80f0383ab Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtdoc@5ac97af745 Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +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@d5574cc01b Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtgrpc@65f5d590ed Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qthttpserver@d5a33b83de Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtimageformats@f9a0ea84cd Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtlanguageserver@f66973b8bd Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtlocation@f4a5411f22 Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtlottie@328a397a30 Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtmqtt@6918921f71 Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtmultimedia@b7d1afce92 Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtnetworkauth@fed3e5d230 Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtopcua@9d7ed8c5d8 Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtpim@02efef5ee6 Updated submodules. 2016-06-28 15:58:12 +00:00
qtpositioning@054969803c Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtqa@94af6d78ee Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtquick3d@01382b7596 Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtquick3dphysics@8227ed9404 Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtquickeffectmaker@10092c140a Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtquicktimeline@f8bd597091 Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtremoteobjects@f2014c1986 Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtrepotools@cbb5cce6ea Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtscxml@0831b610c2 Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtsensors@f0c1ff2b59 Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtserialbus@477d29031d Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtserialport@1ca4d654a1 Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtshadertools@ae463cfa93 Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtspeech@f65a22322e Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtsvg@1a4619c890 Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtsystems@434af789f0 Updated submodules. 2016-06-28 15:58:12 +00:00
qttools@a132116e3a Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qttranslations@54a48d2c2b Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtvirtualkeyboard@09d2b585a8 Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtwayland@99aed7df9a Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtwebchannel@057d4ebbbb Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtwebengine@2d313c27b9 Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtwebglplugin@531fb30d53 Update submodules on 'dev' in qt/qt5 2019-10-26 14:01:00 +02:00
qtwebsockets@8d50fe5d49 Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +00:00
qtwebview@294e895658 Update submodules on 'dev in qt/qt5' 2023-06-09 12:33:20 +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 CMakeUserPresets.json to .gitignore 2023-06-12 12:10:30 +00:00
.gitmodules Add missing optional dependency for qtgrpc submodule 2023-06-14 07:19:46 +00:00
.tag Update the git-archive export options 2012-09-05 14:33:37 +02:00
CMakeLists.txt Show an error when a submodule is missing, or misspelled 2023-06-12 12:10:23 +00: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 README.md: Remove Ruby requirement 2022-11-10 04:36:12 +00:00
_clang-format clang-format: codify some of our conventions 2022-09-28 11:42:29 +02:00
conanfile_profiles.py Conan: Add a recipe to pack build profiles in a Conan package 2021-11-19 20:46:58 +03: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 3.16 or newer
  • Ninja 1.8 or newer
  • 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.