我刚刚安装了CocoaPods。我的应用目标构建并运行。
我在我的Podfile中添加了一个link_with
行,以允许cocoapods将框架添加到我的Tests目标中。现在,在尝试运行测试时,我遇到了一些链接器错误。通过在other linker flags
中指定XCTest框架,我能够解决丢失的XCTest错误,如图所示。
我还是留下了这个,这是对我项目中的一个类的引用。在我的测试中还有一些其他类的引用似乎不会导致错误,我看不出任何不同的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 paths
:
答案 0 :(得分:0)
对我来说,这看起来像是在尝试在模拟器上编译和运行测试,而不是实际构建模拟器的处理器架构。
您的测试项目可能会将i386
列为有效的体系结构,但您的主项目是否也将其列在那里?
在产品目标的构建设置中检查有效体系结构,并确保将i386
列为有效体系结构,然后清理并构建以便再次进行测试。