Objective-C运行时信息与测试装备所需的运行时信息不匹配

时间:2013-01-04 00:03:32

标签: xcode macos

我有几个旧的32位,非ARC,框架(预编译,我没有访问源)我试图包含在一个新项目中。该项目构建正常,但当我尝试运行单元测试时,我收到以下错误:

  

测试包在   [...] MappingKitTests.octest   无法加载,因为它的Objective-C运行时信息   不匹配测试装备所需的运行时信息。这是   可能是因为测试装备正在使用Objective-C垃圾运行   集合已禁用,但测试包需要Objective-C垃圾   采集。为测试启用Objective-C垃圾回收   在没有OBJC_DISABLE_GC环境的​​环境中运行它   变量

我的新项目和单元测试是32位非ARC,因此这个错误对我来说没有多大意义。

是否必须使用相同版本的OS X SDK构建项目和框架?这是我唯一能想到的。框架是使用10.6 SDK构建的,我的新项目是使用10.8 SDK构建的。

1 个答案:

答案 0 :(得分:0)

我想出来了。我在垃圾收集(GC)和自动引用计数(ARC)之间感到困惑。此错误特指GC。

添加 GCC_ENABLE_OBJC_GC =不支持的用户定义构建设置已更正此问题。