Add -DWITH_BUILD_QT CMake option and --build-qt release-tool flags - #13473
Add -DWITH_BUILD_QT CMake option and --build-qt release-tool flags#13473phoerious wants to merge 1 commit into
Conversation
50effaa to
8d3592b
Compare
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## develop #13473 +/- ##
========================================
Coverage 63.12% 63.12%
========================================
Files 385 385
Lines 40932 40932
========================================
+ Hits 25836 25837 +1
+ Misses 15096 15095 -1 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
8d3592b to
b32c2a4
Compare
|
Problem: macdeployqt is installed in the host prefix, but it needs to find Qt in the target prefix, which at the moment it doesn't. Need to find a solution before this can be merged. |
9b36a11 to
d15bfff
Compare
|
I think I fixed it. The initial issue was that CMake's RPATH resolution wasn't set correctly. This prevented macdeployqt from finding any of the vcpkg dependencies (not only, but also when Qt was installed externally). I fixed that by adding it to However, that still did't allow macdeployqt to find the Qt plugins. The underlying issue is that vcpkg installs macdeployqt only to the host triplet install dir. Previously, with qt5, it was installed to the target triplet install dir as well, so this issue didn't show up. Now, it either cannot find macdeployqt or, when I point it to the correct location, it cannot find the Qt libraries and plugins. I would consider this a vcpkg bug, because it kind of makes cross compilation impossible or very hard at least. My fix for now is to simply symlink macdeployqt or windeployqt from the host install dir to the target install dir and start it from there. A qt_release.conf or qt_debug.conf exists there already. This is not pretty, but it seems to work. A cleaner but also much more involved fix would be to copy it somewhere to the cmake binary dir and create a custom qt.conf next to it. @droidmonkey Can you test whether this also works on Windows? The next milestone is to wait for this to get fixed: microsoft/vcpkg#52624 |
d15bfff to
07548ab
Compare
|
Actually not ready, getting this error when running the release tool:
|
|
However you still try to create a symbolic link to macdeployqt on windows... |
|
Oops, true. However, the issue might not be the missing that but that you need admin permissions for symlinks on Windows. Totally forgot about that. Maybe copying the file is better. |
|
@droidmonkey Try again. I had to advance the baseline, so you probably need to update the Windows and macOS CI. |
… build Qt6 via vcpkg instead of using binaries from the system Also advance vcpkg baseline to pull in Qt 6.11 and to fix compilation with macOS SDK 26.
916bf77 to
fabfba2
Compare

Add a
-DWITH_BUILD_QTCMake option and--build-qtrelease-tool flags to build Qt6 via vcpkg instead of using binaries from the system.Fixes the problem that preinstalled Qt binaries can have a different
MACOSX_DEPLOYMENT_TARGETset and other issues that make them unsuitable for redistribution.Testing strategy
Built on macOS with
./release-tool.py build --snapshot 2.8.0 --sign --build-qt.Type of change