[Development] Qt 6 co-installability with Qt 5

Joerg Bornemann joerg.bornemann at qt.io
Fri Feb 12 10:21:39 CET 2021


here comes an update on the status of co-installability of Qt5 and Qt6.

For the main issue QTBUG-89170, I've created 
Package maintainers, please review this patch.

Let me paste parts of the commit message to fill you in what this is about.

When packaging different Qt versions for Linux distributions (or any
distribution with a common bin dir), Qt tools cannot be installed to
/usr/bin, because the executable names of the different Qt versions

To solve this conflict, our recommendation is to install Qt's tools to
/usr/qt6/bin and to create versioned symlinks to user-facing tools in

User-facing tools are tools that are supposed to be started manually by
the user. They are marked in Qt's build system. Distro package
maintainers can now configure with
and will find a file called user_facing_tool_links.txt in the build
directory after the cmake run. Nothing will be installed to

Each line of user_facing_tool_links.txt consists of the installation
path of a user-facing application followed by a space and the versioned

Example content:
/usr/qt6/bin/qmake /usr/bin/qmake6

To actually create the versioned symlinks, the content of this file can
be fed to ln like this:
   xargs ln -s < build-dir/user_facing_tool_links.txt

Or the package maintainer may decide to do something completely
different as suits their needs.

Apart from that, we still plan to move the non-user-facing tools to 
libexec. QTBUG-88791 tracks this.
Patch is here: https://codereview.qt-project.org/c/qt/qtbase/+/331332



More information about the Development mailing list