3

我收到这些 Apple Mach-O Linker 错误,但我不知道如何阅读这些内容。在我的项目中导入“CLCredentialHeader.h”和“CLCredentialHeader.m”后出现这些错误。

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

3 回答 3

19

确保它SFHFKeychainUtils.m出现在构建目标的“编译源”构建阶段。有时,将文件添加到 Xcode 中的项目不会将所有实现文件添加到适当的目标。

于 2012-04-27T20:23:28.700 回答
9

有时当我从另一个项目拖放一个类并忘记在弹出的窗口中标记“添加到目标”时,我会得到这个。我认为这是一个非常合理的问题。错误消息也不是很直观。解决方案很容易在 XCode 中单击项目,然后单击“Build Phases”并打开“Compile Source”,然后说“+”。这里的一些图片比所有的话都说得更多。

所以如果错误看起来像这样,它告诉我 DataAccess 类是未定义的。

在此处输入图像描述

我认为这是我刚刚拖放到项目中的一个类。我将 DataAccess.m 添加到我的项目中

在此处输入图像描述

最初我可以通过标记“添加到目标”来避免它

在此处输入图像描述

于 2012-08-14T05:25:46.543 回答
1

如果上述答案对您不起作用,请检查您是否添加了安全框架。如果没有,则将其添加到目标的构建阶段部分。那么应该没问题:)

于 2013-05-23T08:44:56.700 回答