6

似乎在将 Xcode 12 更新到 beta 5 后,使用 Firebase/Analytics pod 时 SwiftUI 预览不再起作用。预览失败并出现错误:

linker command failed with exit code 1 (use -v to see invocation)

----------------------------------------

SchemeBuildError: Failed to build the scheme "Boo"

linker command failed with exit code 1 (use -v to see invocation)


Link Boo (arm64):
ld: in /Users/../Boo/Pods/FirebaseAnalytics/Frameworks/FIRAnalyticsConnector.framework/FIRAnalyticsConnector(FIRAnalyticsConnector_e321ed8e3db06efc9803f6c008e67a34.o), building for iOS Simulator, but linking in object file built for iOS, file '/Users/.../Boo/Pods/FirebaseAnalytics/Frameworks/FIRAnalyticsConnector.framework/FIRAnalyticsConnector' for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

任何建议如何解决这个问题?

4

4 回答 4

12

要仅在模拟器上运行时排除 arm64 架构,请在构建设置中添加“Any iOS Simulator SDK”限定符。然后,在物理设备上进行测试时,您不必删除此设置。

在此处输入图像描述

要添加限定符,请单击小加号按钮,如图所示。

在此处输入图像描述

于 2020-09-02T17:55:44.083 回答
5

以下解决方法(感谢 Apple Developer 论坛上的用户)对我有用:

为任何具有 Firebase Analytics 的目标的调试方案添加“arm64”到排除的架构。

如果您需要调试到实际的 iOS 设备,这显然会给您带来问题。但是当您需要在设备上进行测试时,您可以将其移除。

于 2020-08-20T17:43:47.083 回答
3

如何将 arm64 添加为排除架构

接受的答案也对我有用。但我不知道如何做到这一点,因为我以前从未这样做过,所以我想向你展示我为实现这一目标所采取的步骤。

构建设置

  1. 在项目导航器中选择您的项目
  2. 在项目设置中选择您的项目
  3. 在顶部,选择“构建设置”
  4. 然后选择“全部”以显示所有构建设置
  5. 在顶部,您将看到一个名为“架构”的部分。在本节中是“排除的架构”。你想扩展它。然后在Debug旁边,双击并输入“arm64”。
于 2020-08-26T13:27:34.737 回答
0

Xcode 12,测试版 6

Xcode 12 中删除了 Valid Architectures 构建设置。如果您在此构建设置中有值,它们会导致问题并需要删除。

我能够通过将 VALID_ARCHS 构建设置重新添加为用户定义的构建设置(没有值),运行项目(失败),然后删除 VALID_ARCHS 构建设置来“清除”它。

我的架构构建设置是标准架构。

于 2020-09-02T21:53:07.117 回答