我收到这些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)
答案 0 :(得分:18)
确保SFHFKeychainUtils.m
出现在构建目标的“编译源”构建阶段中。有时,在Xcode中向项目添加文件不会将所有实现文件添加到适当的目标。
答案 1 :(得分:9)
当我从另一个项目中拖放一个类而忘记在弹出的窗口中标记“添加到目标”时,我有时会得到这个。我认为这是一个非常合理的问题。错误消息也不是很直观。在XCode点击项目时,解决方案很简单,点击“Build Phases”并打开“Compile Source”然后说“+”。这里有些图片说的比所有单词更多。
因此,如果错误看起来像这样,它告诉我DataAccess类是未定义的。
我认为这是一个我拖入项目的课程。我将DataAccess.m添加到我的项目
最初我可以通过标记“添加到目标”来避免它
答案 2 :(得分:1)
如果上述答案对您不起作用,请检查您是否添加了安全框架。 如果没有,则将其添加到目标的构建阶段部分。 应该没问题:)