-
Notifications
You must be signed in to change notification settings - Fork 3
Updating Qt
For general background and additional options, see the official Qt guide: Building Qt 6 from Git.
Install the following before building Qt:
- StrawberryPerl (recommended over other Perl distributions): https://strawberryperl.com
- Ninja: https://ninja-build.org
- CMake: https://cmake.org
-
Git for Windows: https://git-scm.com (also provides Git Bash, which is required for the
init-repositorystep)
Make sure StrawberryPerl appears before any other Perl installation in your system PATH.
The following examples assume you work in C:\code\qt and target VS 2026 / MSVC 14.5x (vs144). Adjust paths and version names accordingly.
cd C:\code\qt
git clone https://code.qt.io/qt/qt5.git qt6
cd qt6
git fetch --tags
git checkout v6.11.0This 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,qtsvgmkdir C:\code\qt\qt6-build
mkdir C:\code\qt\installOpen 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-infocmake --build . --parallel
ninja installRename 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- 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.cmakein the ezEngine repository to point to the new release URL.
- In our Azure account, download the current thirdparty zip from the
ez-containercontainer. - 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
ThirdPartyWinx64Qt6in ezKeys with the new SAS URL. Alternatively, create a new secret and updateCode\BuildSystem\AzurePipelines\Windows-x64.ymlto reference it.