cfi*_*her 52 unit-testing linker-errors ocunit xcode4
我有一个带有常规目标和单元测试目标的XCode4/iOS项目.一切正常,除非我尝试#import我的测试类中的一个类并尝试使用它.如果我尝试构建单元测试目标,我会收到以下链接错误:
Undefined symbols for architecture i386:
"_OBJC_CLASS_$_FRRCategory", referenced from:
objc-class-ref in CategoryTests.o
ld: symbol(s) not found for architecture i386
collect2: ld returned 1 exit status
Run Code Online (Sandbox Code Playgroud)
在CategoryTests.m中,我以这种方式导入头文件:
#import "../todoro/FRRCategory.h"
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
Joe*_*Joe 22
确保已将FRRCategory源文件添加到单元测试目标的编译源中.
Xcode 4:
Project Navigator - >"[Project Name]" - >在Targets下选择您的单元测试目标 - > Build Phases - > Expand Compile Sources - >单击Compile sources底部的+并添加正确的源文件.
您可能遇到的另一个问题是,如果您的单元测试使用的是实际应用中未使用的C函数(或类似函数).
这可能仅限于拥有子项目.就我而言
我的单元测试使用了一些其他地方没有使用过的C函数,这些函数从app二进制文件中删除(不是从子项目的.a文件中删除).
修复是
(*不要对发布配置执行此操作,因为它会使用从未调用过的代码使应用程序膨胀).
归档时间: |
|
查看次数: |
23291 次 |
最近记录: |