为什么 iOS 模拟器版本面向 Apple Silicon Mac 上的x86_64?

Why is iOS Simulator build targeting x86_64 on Apple Silicon Mac?

提问人:Can Poyrazoğlu 提问时间:11/16/2023 更新时间:11/16/2023 访问量:27

问:

我最近不得不引入一个在模拟器上不支持 arm64 的库(GoogleMLKit,使用 Pods)。

  • 我可以完美地为 iPhone 设备 arm64 构建。
  • 我可以为 Rosetta iPhone 模拟器构建(从 Product > Destination > Destination Architectures > Show Both),这是x86_64,尽管我不想在仿真下运行。

如果我尝试在 arm64(非 Rosetta)上为模拟器构建,Xcode 会为从新添加的 Google 库及其依赖项引用的x86_64提供链接器错误。

  • 为什么它首先要在针对 arm64 模拟器的 Apple Silicon Mac 上构建x86_64?
  • 为什么它在 iPhone(arm64)上完美编译,但在链接(仍然不知道为什么在那里)我的应用程序x86_64版本时无法在 iOS 模拟器上编译?- 为什么在为 Rosetta 构建时可以编译 x86_64,但在非 Rosetta 上无法编译x86_64?

最重要的是:

  • 我怎样才能摆脱x86_64的一切,只为 arm64 构建,这是我需要为模拟器和 iOS 设备构建的唯一架构?

我尝试在我的 podfile 中为我的 pod 排除 arm64 和/或 x86_64,但无济于事。

我在 Xcode 15.0.1 上。

ios xcode ios-simulator xcode15 罗塞塔

评论


答: 暂无答案