【问题标题】:Is there any way to compile x86-64 + arm64 universal binaries in macOS 10.14?有没有办法在 macOS 10.14 中编译 x86-64 + arm64 通用二进制文件?
【发布时间】:2021-03-02 09:01:45
【问题描述】:

编译针对 Apple 新 M1 处理器的通用二进制文件的官方方法是使用 Xcode 12,它至少需要 macOS 10.15.4。不过,我目前正在运行 macOS 10.14.6,如果可以避免的话,我不想升级。在运行 macOS 10.14 时,是否有非官方的方式来编译这样的通用二进制文件?

【问题讨论】:

  • 您可以尝试从 Apple 的开发者网站下载 Xcode,并调用与其捆绑的命令行实用程序……但您可能需要围绕它们编写大量脚本。

标签: macos universal-binary apple-silicon


【解决方案1】:

简短回答:否

为什么? 苹果做到了。苹果有一个文档here

您必须使用 Xcode 12.2 及更高版本。您必须升级到 MacOS 10.15.4+ 或 11 才能使用最新功能。 Apple 带来了工具 lipo 来为 ARM64 和 AMD64 架构转换二进制文件。

使用 Apple 芯片,您可以为 ARM64 和 AMD64 编译二进制文件。您可以自然地调试 ARM64 二进制文件。您可以在 Rosetta 翻译下调试 AMD64 二进制文件。

使用 Intel x86 芯片,您可以为 ARM64 和 AMD64 编译二进制文件。您可以自然地调试 AMD64 二进制文件。但是您不能在 Rosetta 翻译下调试 ARM64 二进制文件。

这意味着 Apple Silicon 的 ARM64 架构可以在 MacOS 上执行更多操作。这对 AMD64 芯片是不公平的。典型的苹果。希望有人能出来解封苹果的秘密芯片。但我不认为苹果愿意分享。如果 Intel/AMD 醒来并为我们带来更强大的芯片,可以为 MacOS 编译/调试 ARM64 二进制文件,苹果不会对他们的销售感到满意。从长远来看,我们将无法做到(似乎)。苹果几年前踢走了英伟达,现在是英特尔,很快就是 AMD。在这里标记它。 10年后,让我们拭目以待。

【讨论】:

    猜你喜欢
    • 2012-12-22
    • 1970-01-01
    • 2017-02-16
    • 2011-09-02
    • 1970-01-01
    • 2014-10-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多