我正在尝试将OCUnit测试添加到现有项目中(在XCode 4.6.3中)。我按照这里的说明进行了操作 - http://twobitlabs.com/2011/06/adding-ocunit-to-an-existing-ios-project-with-xcode-4/但是只有在尝试运行测试时我才会收到78个Mach-O错误。我可以很好地编译主目标。
有一点需要注意我尚未修改测试,它们只是标准模板。我不确定我做错了什么。
一条错误消息
架构i386的未定义符号:“_ AudioComponentFindNext”, 引自: libNuanceSpeechAnywhere.a中的l651(libSpeechKit.a-i386-master.o) libNuanceSpeechAnywhere.a中的l652(libSpeechKit.a-i386-master.o)
以下是一系列错误的屏幕截图。
答案 0 :(得分:3)
在我的头撞击键盘几个小时之后,如果您使用CocoaPods,我找到了这个解决方案:
在您的podfile中,添加您的测试目标以及必要的依赖项
workspace 'MyProject'
target 'MyProject' do
use_frameworks!
pod 'Alamofire', '~> 4.0'
pod 'RealmSwift'
end
target 'MyProjectTests' do
use_frameworks!
pod 'Alamofire', '~> 4.0'
pod 'RealmSwift'
end
post_install do |installer|
installer.pods_project.targets.each do |target|
target.build_configurations.each do |config|
config.build_settings['SWIFT_VERSION'] = '3.0'
end
end
end
然后只需运行pod install,所有内容都应该正确配置。我建议运行pod install --verbose,这样你就可以看到是否有任何警告。如果您手动编辑了构建配置,Pod会抱怨它。按照建议,然后重新安装。像魅力一样。
答案 1 :(得分:1)
您必须先将AudioUnit
框架添加到项目中,然后重建它。
这是您项目的how you add frameworks。