Skip to content

Updating Qt

Jan Krassnigg edited this page May 13, 2026 · 3 revisions

Updating Qt

Prerequisites

For general background and additional options, see the official Qt guide: Building Qt 6 from Git.

Install the following before building Qt:

Make sure StrawberryPerl appears before any other Perl installation in your system PATH.

Building Qt 6

The following examples assume you work in C:\code\qt and target VS 2026 / MSVC 14.5x (vs144). Adjust paths and version names accordingly.

Clone and check out

cd C:\code\qt
git clone https://code.qt.io/qt/qt5.git qt6
cd qt6
git fetch --tags
git checkout v6.11.0

Initialize submodules

This step must be run from Git Bash (not PowerShell or cmd), because init-repository internally calls /bin/sh:

cd /c/code/qt/qt6
perl init-repository --module-subset=qtbase,qtsvg

Create build folders

mkdir C:\code\qt\qt6-build
mkdir C:\code\qt\install

Configure

Open an x64 Native Tools Command Prompt for VS 2026. Make sure StrawberryPerl is in the PATH. Then:

cd C:\code\qt\qt6-build
..\qt6\configure.bat -submodules qtsvg,qtbase -nomake examples -nomake tests -prefix C:\code\qt\install -debug-and-release -force-debug-info

Build and install

cmake --build . --parallel
ninja install

Package

Rename the install folder to match the version naming convention, e.g. Qt6-6.11.0-vs144-x64.

The version suffix encodes the MSVC toolset:

Visual Studio Toolset suffix
VS 2022 vs143
VS 2026 vs144

Compress the renamed folder with 7z so that the archive root contains the versioned folder directly:

7z a Qt6-6.11.0-vs144-x64.7z Qt6-6.11.0-vs144-x64

Release the Qt zip

  • Create a new tag in the https://github.com/ezEngine/thirdparty repository with the same name as the version folder, e.g. Qt6-6.11.0-vs144-x64.
  • Create a new release from that tag and attach the 7z file.
  • Update ezCMakeConfig.cmake in the ezEngine repository to point to the new release URL.

Update the thirdparty zip for CI

  • In our Azure account, download the current thirdparty zip from the ez-container container.
  • Remove the old Qt version folder and add the new one.
  • Re-create the thirdparty zip and upload it to ez-container.
  • Create a SAS token with an end date far in the future.
  • Update the secret ThirdPartyWinx64Qt6 in ezKeys with the new SAS URL. Alternatively, create a new secret and update Code\BuildSystem\AzurePipelines\Windows-x64.yml to reference it.

Clone this wiki locally