xcode 6测试目标Mach-O链接器错误

时间:2015-01-06 19:57:36

标签: ios xcode linker

我刚刚安装了CocoaPods。我的应用目标构建并运行。

我在我的Podfile中添加了一个link_with行,以允许cocoapods将框架添加到我的Tests目标中。现在,在尝试运行测试时,我遇到了一些链接器错误。通过在other linker flags中指定XCTest框架,我能够解决丢失的XCTest错误,如图所示。

enter image description here

我还是留下了这个,这是对我项目中的一个类的引用。在我的测试中还有一些其他类的引用似乎不会导致错误,我看不出任何不同的ServerController

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

这是我的header search pathsenter image description here

1 个答案:

答案 0 :(得分:0)

对我来说,这看起来像是在尝试在模拟器上编译和运行测试,而不是实际构建模拟器的处理器架构。

您的测试项目可能会将i386列为有效的体系结构,但您的主项目是否也将其列在那里?

在产品目标的构建设置中检查有效体系结构,并确保将i386列为有效体系结构,然后清理并构建以便再次进行测试。