使用MMWormhole Library和Watchkit在XCode 6.2中链接器命令失败

问题描述:

当尝试构建应用程序时,出现“链接器命令失败,退出代码为1”错误。下面是错误的样子在Xcode:使用MMWormhole Library和Watchkit在XCode 6.2中链接器命令失败

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

看起来像图书馆没有biult的x86架构,但是这是从我迄今阅读只是胡乱猜测。当我在“构建设置”中从有效的架构中删除架构时,错误消息已消失,但我得到另一个架构。

有没有人有过MMWormhole的一些经验,并知道该怎么办?

我的猜测是你只在你的iOS应用程序目标中包含了MMWormHole,而不是在你的WatchKit扩展中。如果您只是导入源代码而不是库,则需要检查源代码的目标,并确保选择了iOS应用程序和WatchKit扩展程序(请参阅Calling a Method on Watchkit)。如果您包含或构建库,则需要检查iOS应用程序和WatchKit扩展中的设置,并确保它们都与库相链接。

+1

这是正确的 - 我刚刚得到同样的问题,并修复它。检查MMWormHole的.m文件的目标成员身份,并确保它已被选定用于扩展。谢谢@Stephen Johnson! – AndyOS 2015-04-02 15:21:47

+0

事实上,这是链接库的问题。我错误地将它链接到“Link Binary with libraries”中,当然它不是二进制文件。我在“编译源码”列表中添加了库,并且它工作正常 – mbnz 2015-04-07 10:08:50