Qt for Windows on ARM - today, it is more interesting than ever!
用于ARM上的Windows的Qt-今天,它比以往任何时候都更有趣!
May 21, 2024 by Vladimir Minenko | Comments
2024年5月21日 Vladimir Minenko |评论
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.
Qt是在台式机和嵌入式设备上构建跨平台和多平台应用程序的领先框架。今天,无数基于ARM的设备使用Qt来提供现代用户体验。随着ARM架构在桌面计算中的兴起,使用Qt的开发人员受益于Qt在桌面和嵌入式两个领域的长期记录。
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.
昨天,也就是5月20日,微软推出了Copilot+PC,推出了新的基于Surface Laptop和Surface Pro ARM的PC,以及几乎所有主要制造商宣布的其他多种新产品。这对于Qt开发人员和整个Qt来说都是一个激动人心的消息。
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支持Windows,自90年代初以来一直在该平台上使用。它有着悠久而有趣的历史,2024年,它在数百万台Windows PC上运行了无数的Qt应用程序。
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.
自Qt 6.2以来,Qt 6一直支持ARM上的Windows作为技术预览版,这反映了Qt早期对这一新兴平台的承诺,从今天起,这是一个令人兴奋的新平台。Qt 6.2中的此实现允许在x86_64开发机器上进行交叉编译,并远程部署到ARM上的Windows目标。有关更多详细信息,请参阅此博客文章。
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!
针对即将推出的Qt 6.8,我们正在将此技术预览实现扩展到直接在ARM台式机上的Windows上运行,从而使远程部署成为可选。这将基本上反映大多数开发人员使用的众所周知的桌面应用程序开发工作流。除了过去使用Windows DevKit之外,我们还在云服务中验证了在真正的Copilot+PC高通硬件上的实现。好消息是意料之中的:Qt在那里跑得很好!感谢Linaro和高通公司使这一切成为可能!
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.
在撰写本文时,Qt还不支持新的ARM64EC(“Emulation Compatible”)应用程序二进制接口(ABI)。这是一个已知的差距,我们目前正在努力弥补。根据进展情况,我们正在考虑在最终版本中支持ARM64EC ABI。如前所述,支持本机ARM64 ABI,因为在ARM上的Qt for Windows中使用时间更长。
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!
我们的目标是尽早完成这些工作,以便在Qt 6.8.x中全面发布。在一些问题得到解决后,我们将在接下来的几周内在Qt安装程序中提供6.7.x的预览包。敬请期待!
With Qt 6.8, Windows on ARM will become one of the standard desktop platforms supported in Qt.
有了Qt 6.8,ARM上的Windows将成为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.
我很期待今天开始的微软Build 2024活动会有什么进展!我们的一些同事将出席此次活动。
Let us know about your plans and needs in the support of Windows on ARM in Qt now and in the future.
让我们了解现在和将来在Qt中支持ARM上的Windows的计划和需求。