Qt5 super module
Go to file
Konrad Kujawa 9707535fc1 Add provisioning of gRPC on Windows machines
Enable native_grpc feature on msvc developer-builds.

Fixes: QTBUG-109072
Pick-to: 6.6
Change-Id: I64914d4bf0f26b907a98508f88587cbc8cb947b3
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
Reviewed-by: Tatiana Borisova <tatiana.borisova@qt.io>
2023-11-22 20:06:49 +02:00
LICENSES Add license directory and update remaining license format in coin 2023-09-02 13:58:24 +02:00
cmake Add QtSortModuleDependencies.cmake 2023-09-28 11:02:30 +02:00
coin Add provisioning of gRPC on Windows machines 2023-11-22 20:06:49 +02:00
qt3d@a398c439f3 Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qt5compat@6beb094902 Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtactiveqt@90a04e816c Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtbase@66345ce785 Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtcanvas3d@1319e0965f Update submodules on 'dev' in qt5 2019-01-11 07:40:26 +00:00
qtcharts@7b9e1ba670 Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtcoap@767c5205ec Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtconnectivity@2e3b5b8832 Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtdatavis3d@ae072bc618 Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtdeclarative@c9f2e4901c Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtdoc@0d12cb5096 Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +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@ba7ea9b495 Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtgrpc@4733a46f6f Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qthttpserver@adb0219a03 Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtimageformats@9a3ad1a25e Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtlanguageserver@e4d97a4165 Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtlocation@4d89997b56 Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtlottie@2c782913c2 Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtmqtt@f88c37d13a Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtmultimedia@8e15a24d50 Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtnetworkauth@0dda55b9a2 Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtopcua@1c42a566f9 Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtpim@02efef5ee6 Updated submodules. 2016-06-28 15:58:12 +00:00
qtpositioning@06854f61d6 Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtqa@8d5e3e95ce Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtquick3d@b2c6722b8d Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtquick3dphysics@c7994866e3 Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtquickeffectmaker@5cfaa9443d Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtquicktimeline@6dc834178b Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtremoteobjects@596e96a7c2 Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtrepotools@40490ad024 Update submodules on 'dev in qt/qt5' 2023-10-20 02:37:09 +00:00
qtscxml@051e31e50c Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtsensors@a94239fb1f Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtserialbus@d0bbff3860 Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtserialport@dd087de8ff Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtshadertools@a0cd649f15 Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtspeech@1408746b33 Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtsvg@7711730049 Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtsystems@434af789f0 Updated submodules. 2016-06-28 15:58:12 +00:00
qttools@8b757d2311 Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qttranslations@6ef0d4e668 Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtvirtualkeyboard@2fc84ea6bf Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtwayland@8bdbee930c Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtwebchannel@cb32566bab Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtwebengine@f4d405cac6 Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtwebglplugin@531fb30d53 Update submodules on 'dev' in qt/qt5 2019-10-26 14:01:00 +02:00
qtwebsockets@92cb9ee112 Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +00:00
qtwebview@fe8cddea0f Update submodules on 'dev in qt/qt5' 2023-11-20 17:54:58 +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 Make qtmultimedia a hard dependency for qtspeech 2023-10-09 14:21:11 +02:00
.tag Update the git-archive export options 2012-09-05 14:33:37 +02:00
CMakeLists.txt CMake: Move some code back into qtbase 2023-09-20 08:29:08 +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
README.md.template Doc: Create README template 2023-09-23 10:27:29 +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.