Qt5 super module
Go to file
Rami Potinkara 7ad2801f92 Make qtbase significant for Android 12 emulator in CI
qtbase was last insignificant module. When below "needed to"
are in, qtbase can be mark as significant.

Needed to
- increase emulator RAM to 16GB
- RAM increase to 16GB fixed tst_QByteArrayLarge cases
- SKIP tst_QRhi::tessellation(Vulkan)
- SKIP tst_QOpenGLWidget::reparentHidden
- SKIP tst_qvulkan cases

Above SKIP bugs to be fixed later in Qt 6.5 as bugs.

Task-number: QTQAINFRA-4733
Task-number: QTQAINFRA-5391
Task-number: QTBUG-108832
Task-number: QTBUG-108844
Task-number: QTBUG-111235
Task-number: QTBUG-111236
Pick-to: 6.5
Change-Id: I5d3e99ad144dbcf192873458dedd0300ed622beb
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
2023-04-13 07:08:11 +02:00
cmake CMake: Add support for a git qt-foreach subcommand for worktrees 2023-01-27 10:44:08 +01:00
coin Make qtbase significant for Android 12 emulator in CI 2023-04-13 07:08:11 +02:00
qt3d@e37a2e7273 Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qt5compat@1bb101b4ab Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtactiveqt@4bc4722c96 Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtbase@7191b8fe38 Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtcanvas3d@1319e0965f Update submodules on 'dev' in qt5 2019-01-11 07:40:26 +00:00
qtcharts@52ab1b36d1 Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtcoap@aa9c5d1e98 Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtconnectivity@8df4e69925 Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtdatavis3d@f683d91510 Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtdeclarative@ba93f001a3 Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtdoc@695ad74b88 Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +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
qtgrpc@c82b7875da Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qthttpserver@fcef48efed Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtimageformats@07b749160b Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtlanguageserver@0fbe68ae6c Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtlocation@48c464e892 Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtlottie@ab9eafb07f Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtmqtt@164cc3ca1a Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtmultimedia@8921709b8d Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtnetworkauth@7a2d7f5d7d Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtopcua@6cc9a50b29 Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtpim@02efef5ee6 Updated submodules. 2016-06-28 15:58:12 +00:00
qtpositioning@f96f567f0e Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtqa@784ea8e0f5 Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtquick3d@aba6f2dc87 Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtquick3dphysics@38a2ab815a Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtquickeffectmaker@1fafe89b57 Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtquicktimeline@5125df9e2f Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtremoteobjects@8cece81d63 Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtrepotools@1d70fe16c4 Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtscxml@50026e6fa7 Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtsensors@d202109a83 Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtserialbus@b6985f2bd3 Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtserialport@98e7c17b46 Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtshadertools@b7948d9e21 Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtspeech@c87891cc37 Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtsvg@7dbfdb338a Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtsystems@434af789f0 Updated submodules. 2016-06-28 15:58:12 +00:00
qttools@4389f87ef4 Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qttranslations@c6b5942e66 Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtvirtualkeyboard@59c298ac3d Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtwayland@7819544b91 Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtwebchannel@f535958c2b Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtwebengine@6cfbef4474 Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtwebglplugin@531fb30d53 Update submodules on 'dev' in qt/qt5 2019-10-26 14:01:00 +02:00
qtwebsockets@94e9077a2a Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +00:00
qtwebview@240913ef57 Update submodules on 'dev in qt/qt5' 2023-04-12 00:52:45 +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 *.pro.user* to .gitignore 2017-05-25 21:34:29 +00:00
.gitmodules Add shadertools and webengine to qtdoc "recommends" list 2023-03-22 17:23:47 +00:00
.tag Update the git-archive export options 2012-09-05 14:33:37 +02:00
CMakeLists.txt Enable CMAKE_MESSAGE_CONTEXT_SHOW 2022-10-26 08:20:01 +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 LA 4.4.1 2022-04-26 20:45:32 +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 Warn on absent qtrepotools 2023-01-26 13:26:02 +01: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.