Qt for Windows on ARM - today, it is more interesting than ever!

Qt is the leading framework for building cross-platform and multi-platform applications on desktops and embedded devices. Countless ARM-based devices use Qt to provide modern UX today. With the rise of ARM architecture in desktop computing, developers using Qt benefit from Qt's long track record in both domains: desktop and embedded.

Yesterday, on May 20th, Microsoft launched Copilot+ PCs with the new Surface Laptop and Surface Pro  ARM-based PCs as well as with multiple other new products annoucned by almost all major manufacturers. This is exciting news for Qt developers and for Qt in general.

As you know, Qt supports Windows and has been used on this platform since the early 90s. It has a long, interesting history and an uncountable number of Qt applications running today, in 2024, on millions of Windows PCs.

Qt on Windows on ARM
Qt 6 has been supporting Windows on ARM as a Technology Preview since Qt 6.2, reflecting Qt's early commitment to this emerging, and since today, an new, exciting platform. This implementation in Qt 6.2 allows cross-compilation on an x86_64 development machine and remote deployment to a Windows on ARM target. See this blog post for more details.

Targeting the upcoming Qt 6.8, we are extending this Technology Preview implementation to run directly on Windows on ARM desktops and so to make remote deployment only optional. This would basically reflect the well-known desktop application development workflow used by most developers. Beyond the use of Windows DevKit in the past, we verified implementation on the real Copilot+ PC Qualcomm hardware in a cloud service. The good news was a kind of expected: Qt ran well there! Thanks to Linaro and Qualcomm for making this possible! 

At the time of writing this, Qt does not support the new ARM64EC (“Emulation Compatible”) application binary interface (ABI) yet. This is a known gap, and we are currently working to close it. Depending the on the progress, we are considering to support the ARM64EC ABI in our final releases. The native ARM64 ABI is supported as already mentioned since a longer time in Qt for Windows on ARM.

We aim to complete these works for a full release in Qt 6.8.x as early as possible. After a few issues are resolved, we will make preview packages available in the Qt Installer in the next weeks for 6.7.x as well. Stay tuned!

With Qt 6.8, Windows on ARM will become one of the standard desktop platforms supported in Qt.

I'm looking forward to see what is coming up on the Microsoft Build 2024 event which starts today! Some of our colleagues will attend the event.

MSBuild_AltCopilot

Let us know about your plans and needs in the support of Windows on ARM in Qt now and in the future.


Blog Topics:

Comments