我已经走了这么多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文件。
谢谢!
答案 0 :(得分:0)
我手动扫描工作目标与缺陷目标的 Build Phases> Link Binary With Libraries 。我发现一个仅被添加到工作目标中的框架/库,所述框架不是由pod管理的,这可以解释为什么另一个目标没有该框架。我认为它是在项目中手动添加的。
我将上述框架添加到所有目标中,现在我可以在没有上述错误的情况下进行构建了。
谢谢!
答案 1 :(得分:0)
我遇到了同样的问题,发现的解决方案是如此简单(人....)。 在项目中搜索错误中提到的类。 转到“文件检查器”,然后简单地检查“目标成员身份”中其余目标的V。 而已!我花了两个小时(浪费时间)才找到答案。 希望我的解决方案可以为有类似问题的任何人节省时间。
答案 2 :(得分:0)