mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-11-24 21:10:35 +01:00
f00345727bdoc: Update `dependencies.md` for Qt 6 (Hennadii Stepanov)80b917991ebuild, msvc: Update `vcpkg.json` for Qt 6 (Hennadii Stepanov)30dd1f1644ci: Update for Qt 6 (Hennadii Stepanov)629d292f4dtest: Update sanitizer suppressions for Qt 6 (Hennadii Stepanov)551e13abf8guix: Adjust for Qt 6 (Hennadii Stepanov)c3e9bd086cqt: Fix compiling for Windows (Hennadii Stepanov)ab399c4db2depends: Add `native_qt` package (Hennadii Stepanov)248613eb3edepends: Factor out Qt modules' details (Hennadii Stepanov)0268f52a4cdepends: Introduce customizable `$(package)_patches_path` variables (Hennadii Stepanov)5e794e6202depends: Bump `qt` package up to 6.7.3 (Hennadii Stepanov)6d4214925fcmake: Require Qt 6 to build GUI (Hennadii Stepanov) Pull request description: The currently used Qt 5.15 is approaching [EOL](https://www.qt.io/blog/qt-5.15-extended-support-for-subscription-license-holders) and will reach it before the Bitcoin Core v30 release. The recent migration of the build system to CMake makes it possible to switch to Qt 6. This PR updates the OS runtime compatibility requirements for the Bitcoin Core GUI as follows: ### 1. Linux Starting with Qt 6.5.0, the `libxcb-cursor0` package is required to be installed at runtime. ### 2. Windows Cross-compiling does not support LTO. We have to re-add it in a follow-up. A new style plugin causes minor visual glitches, such as  which will be fixed in follow-ups. ### 3. macOS `bitcoin-qt` now uses the [Metal](https://developer.apple.com/metal/) backend. --- **IMPORTANT.** Don't forget to install [Ninja](https://ninja-build.org/). --- For historical context, please refer to: - https://github.com/bitcoin/bitcoin/issues/20627 - https://github.com/bitcoin/bitcoin/pull/24798 --- UPD 2024-10-09. Qt 6.8 has been [released](https://www.qt.io/blog/qt-6.8-released), but it has some [drawbacks](https://github.com/bitcoin/bitcoin/pull/30997#issuecomment-2402990346) for us. As a result, this PR will stick to Qt 6.7. UPD 2025-03-18: [Standard support for Qt 5.15 will end after 26th of May 2025](https://www.qt.io/blog/extended-security-maintenance-for-qt-5.15-begins-may-2025) ACKs for top commit: laanwj: re-ACKf00345727bhodlinator: re-ACKf00345727bTree-SHA512: 367f722e6c3ea4700b5395871c40b6df8c8062fdc822107090449ea4ae4ad2db75cc53a982a678f4c48ce8f9b2d43ed10e6d23b06165ab78713f161db712d895