【问题标题】:xcode 10.1 Undefined symbols for architecture arm64xcode 10.1 架构 arm64 的未定义符号
【发布时间】:2019-05-20 13:51:57
【问题描述】:

我已经处理了很多类似问题的 SO 线程,但似乎没有一个能解决我的错误。

在我们的项目中,我们有多个“目标”。只有一个目标 - 有史以来创建的第一个目标 - 正在正确归档。当我尝试归档其他目标时,我们会遇到此错误

Undefined symbols for architecture arm64:
  "_OBJC_CLASS_$_DynamicEventData", referenced from:
      objc-class-ref in DataManager.o
      objc-class-ref in DataReader.o
  "_OBJC_CLASS_$_DynamicDataService", referenced from:
      objc-class-ref in DataManager.o
  "_OBJC_CLASS_$_DynamicDataConfig", referenced from:
      objc-class-ref in DataManager.o
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

我确实将 工作目标Build Setting 与其他目标进行了比较,但它们都是相等的。我检查了头文件,它们存在于我们的项目目录中。我尝试手动将头文件的路径添加到Header Search Paths,但同样的结果仍然出现错误。

有什么想法吗?我真的需要解决这个问题才能导出 ipa 文件。

谢谢!

【问题讨论】:

标签: xcode arm64


【解决方案1】:

我遇到了同样的问题,我找到的解决方案非常简单(man....)。 在项目中搜索错误中提到的类。 转到“文件检查器”并简单地检查“目标成员”中的其余目标的 V。 而已!我花了两个小时(浪费时间)才找到答案。 希望我的解决方案能为有类似问题的人节省时间。

【讨论】:

    【解决方案2】:

    我手动扫描检查工作目标与缺陷目标的构建阶段> 将二进制文件与库链接。我发现了一个仅添加到工作目标的框架/库,该框架不是由 pod 管理的,这可以解释为什么另一个目标没有它。我认为它是在项目中手动添加的。

    我将上述框架添加到所有目标,现在我可以构建而不会出现上述错误。

    谢谢!

    【讨论】:

      猜你喜欢
      • 2021-01-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-01-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多