在 M1 Mac 上,Xcode 能否构建本机的 Intel 二进制文件?

6

在M1芯片的Mac电脑上,是否可以使用Xcode构建本机的Intel二进制文件?我想开始使用M1架构进行测试,但仍然需要继续构建本机的Intel应用程序,而无需进行任何更改。

1个回答

7
在 M1 Mac 上,Xcode 会构建 Universal Binary,其中包含适用于 x86_64arm64 的切片。

您可以在基于 Apple Silicon 或基于 Intel 的 Mac 计算机上构建通用二进制文件,但是您无法在基于 Intel 的 Mac 计算机上调试二进制文件的 arm64 切片。在 Apple Silicon 上,可以调试通用二进制文件的两个切片,但您必须在 Rosetta 翻译下运行 x86_64 切片。

来源:https://developer.apple.com/documentation/apple-silicon/building-a-universal-macos-binary

在许多情况下,这会导致代码能够编译为两种体系结构而不需要进行任何更改,但如果需要进行条件编译,则可以使用编译器标志(在上述链接页面中列出)。

谢谢您的反馈。我查看了文档,但不确定是否可以仅构建本机英特尔二进制文件而无需对开发环境进行任何更改? - doberkofler
你的意思是只有英特尔而不是通用的吗?你可能是对的,你需要传递一个标志仅限于x86。 - jnpdx

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接