Qt5 super module
Go to file
Dimitrios Apostolou c66f8407a8 Enable automatic gdb stacktrace in QTest, in case a test crashes
On Linux, this requires that gdb can be found in PATH, and that no
kernel security settings like yama.ptrace_scope  prevent it.

Patch contains also a drive-by architecture detection fix for Debian arm64.

Fixes: QTQAINFRA-6029
Fixes: QTQAINFRA-5940
Fixes: QTQAINFRA-6030
Fixes: QTQAINFRA-6046
Fixes: QTQAINFRA-6012
Fixes: QTQAINFRA-5930
Task-number: QTQAINFRA-5933
Change-Id: Ie6debde94c1cc5783161ffa7354b58734c372702
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Reviewed-by: Toni Saario <toni.saario@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
2024-01-31 20:07:09 +01:00
.github Doc: Create a CONTRIBUTING.md file 2023-12-12 06:17:16 +00: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 Enable automatic gdb stacktrace in QTest, in case a test crashes 2024-01-31 20:07:09 +01:00
qt3d@b4e044cd33 Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qt5compat@9157d12702 Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtactiveqt@7ddc12258a Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtbase@b426414a55 Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtcanvas3d@1319e0965f Update submodules on 'dev' in qt5 2019-01-11 07:40:26 +00:00
qtcharts@c68321ce12 Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtcoap@50db096a26 Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtconnectivity@bbce2a974c Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtdatavis3d@c6bc3ff7e6 Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtdeclarative@d548077d20 Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtdoc@5580acc167 Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +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@9cc00b8019 Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtgrpc@391a17be2f Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qthttpserver@7f65b87841 Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtimageformats@31b60c9370 Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtlanguageserver@5295a33b8b Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtlocation@09cebafa5f Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtlottie@2c006918e1 Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtmqtt@afc4e43234 Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtmultimedia@bd8ba1b190 Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtnetworkauth@16e0f0063f Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtopcua@11587d0352 Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtpim@02efef5ee6 Updated submodules. 2016-06-28 15:58:12 +00:00
qtpositioning@99610760f0 Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtqa@9133c01691 Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtquick3d@7d4c42fbb3 Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtquick3dphysics@4bb7767094 Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtquickeffectmaker@0d04d92e68 Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtquicktimeline@cc7f63db9f Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtremoteobjects@bef222dc4f Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtrepotools@62c866e68f Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtscxml@3bc9dffda3 Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtsensors@4f8becb6be Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtserialbus@06fca1fec5 Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtserialport@038e5c16ba Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtshadertools@f43351f9e4 Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtspeech@7e98e12658 Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtsvg@b421481bec Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtsystems@434af789f0 Updated submodules. 2016-06-28 15:58:12 +00:00
qttools@4cc948c394 Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qttranslations@e09d4e1745 Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtvirtualkeyboard@72d895640a Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtwayland@4bae65b5f4 Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtwebchannel@10b8912e80 Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtwebengine@786fdd1779 Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtwebglplugin@531fb30d53 Update submodules on 'dev' in qt/qt5 2019-10-26 14:01:00 +02:00
qtwebsockets@a141f9d9bb Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +00:00
qtwebview@5ab925acff Update submodules on 'dev in qt/qt5' 2024-01-30 08:20:05 +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
CONTRIBUTING.md Doc: Create a CONTRIBUTING.md file 2023-12-12 06:17:16 +00:00
README.git Update README.git to mention Qt 6 2022-06-23 08:18:48 +02:00
README.md README.md 'Linkify' README.git 2024-01-07 12:13:36 +01: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 Update license header to SPDX format 2023-12-12 06:17:14 +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.