1

我在我的项目中添加了一个新框架。我将框架的 .xcodeproj 文件作为我项目的子项进行了拖动。我将该项目的产品添加到主项目的目标依赖项中,将二进制文件与库和复制文件(框架)进行链接。我在构建测试版本或执行我的项目时没有问题。

但是,如果我尝试创建存档版本或尝试分析项目,则会失败并出现以下错误:

Undefined symbols for architecture x86_64:
  "_OBJC_CLASS_$_Something", referenced from:
      objc-class-ref in DasProject-F7DB55F503641F0A.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

tl;dr:我可以毫无问题地创建和执行调试版本,存档版本找不到特定的框架。

4

2 回答 2

0

尝试将您的“库搜索路径”(“构建设置”->“搜索路径”)设置为“$(TARGET_BUILD_DIR)”或“$(BUILT_PRODUCTS_DIR)”(在我的项目中它们是相同的)
同时选中相应的复选框目标的构建方案,如iOS 工具工作流程指南中所述(忽略它是 iOS 文档,只看图像)

于 2013-03-28T12:55:09.240 回答
0

我从头开始创建了一个新的 Cocoa 框架,并复制了我需要的 .h 和 .m 文件。这解决了问题。

在比较了这个框架和我正在使用的其他框架之间的构建选项并且没有看到任何不合适的地方之后,我真的怀疑这是 Xcode 中的一个错误。

于 2013-03-28T16:54:48.247 回答