Arm64EC 入门
若要开始使用 Arm64EC 生成应用或项目,需要安装一些必备软件并添加 Arm64EC 配置。
先决条件
- 最新的 Windows 11 SDK 版本。 如果使用 Windows 11 SDK 版本 22000,则 2022 年 7 月 29 日更新的版本包括生成 Arm64EC 应用的关键修补程序。
- Visual Studio 2022 版本 17.3 或更高版本。
- 随 Visual Studio 安装程序一起安装的 Arm64EC 工具。
在 Visual Studio 安装程序中,可以通过在“单个组件”下搜索并选择“MSVC v143 - VS 2022 C++ ARM64 生成工具”复选框来添加 Arm64EC 工具。
重要
从 Visual Studio 2022 版本 17.4 开始,安装 Arm64 工具时包括 Arm64EC 工具(MSVC v143 - VS 2022 C++ ARM64 生成工具)。 不再需要为 Arm64EC 工具选择单独的选项。
安装必备组件和工具后,可以在 MSBuild 和 CMake 项目中以 Arm64EC 为目标。
MSBuild 项目
安装工具和 SDK 后,创建新的 C++ 项目或打开现有项目。
注意
如果你的项目使用的是 Windows 11 之前的 SDK 或 VS 17.3 之前的 MSVC 版本,则需要重定向解决方案以使用它们的最新版本。
若要添加 Arm64EC 平台:
- 在“生成”菜单上,选择“配置管理器”。
- 在“活动解决方案平台”框中,选择“
<New…>
”以创建新平台。 - 选择“ARM64EC”,从“x64”复制设置,然后选中“创建新的项目平台”复选框。
可以根据需要选择将解决方案的各部分保留为 x64。 但是,生成为 Arm64EC 的代码越多,以 Arm 上 Windows 11 的本机性能运行的代码就越多。 对于任何外部依赖项,请确保项目的链接基于这些项目的 x64 或 Arm64EC 版本。
新的解决方案平台就绪并选中后,选择 Visual Studio 中的“生成”以开始生成 Arm64EC 二进制文件。
根据设计,并不是 Arm64EC 解决方案中的所有项目都需要面向 Arm64EC,因为它们可以改为面向 x64。 对于想要保留为 x64 的任何此类项目,请确保在 ARM64EC 解决方案版本下的配置管理器中将这些项目配置为面向 x64。
CMake 项目
打开“C++ CMake”项目或创建新项目。
转到活动配置下拉列表并选择“管理配置”,打开 CMakePresets.json 文件。
修改适用于 Arm64EC 的 Windows 配置下的体系结构属性。
"architecture": { "value": "arm64ec", "strategy": "external" }
默认生成器为 Ninja。 如果使用 Visual Studio 生成器,请更改要“设置”的策略字段。
如果使用 Ninja 生成器,则还需要通过将环境对象添加到 CMakePresets 配置来设置一些环境变量。
"environment": { "CXXFLAGS": "/arm64EC", "CFLAGS": "/arm64EC" }
保存 CMakePresets 文件,并确保活动配置设置为 Arm64EC 配置。 从菜单栏中,选择“项目菜单”,然后选择“配置 [项目名称]”,以便生成 CMake 缓存。
导航到“生成菜单”并选择“全部生成”,生成面向 Arm64EC 的 CMake 项目,就像任何其他 CMake 项目一样。
开发人员命令提示符
如果有兴趣使用 Visual Studio 开发人员命令提示来编译和链接 Arm64EC 的源文件,则需要使用 Arm64 开发人员命令提示,然后单独运行 cl
和 link
命令。 使用 cl
的 /arm64EC
开关和 link
的 /MACHINE:ARM64EC
生成并链接 Arm64EC 代码。
cl /arm64EC /c <args>
link /MACHINE:ARM64EC <args>
详细了解如何从命令行使用 Microsoft C++ 工具集。