2012-11-13 21 views
1

我试图从source构建Textual IRC Client无法在Mac OS X上的XCode 4.5中构建文本IRC客户端Lion 10.7

它在4月份为我工作,在同一OS X 10.7计算机上使用当时最新的源代码和最新的XCode。现在它不起作用。

实施例的错误消息

  • 预期方法来读取数组元素没有类型“的NSArray *”

  • 预期方法来读取字典元件的对象发现类型的对象未找到“ NSDictionary *'

  • 预期的方法来写字典元素找不到对象的类型'NSMutableDictionary *'

我在对所有项目和目标(通过设置Code Signing IdentityDon't Code Sign)构建设置关闭代码签名,否则源是干净的。

回答

1

错误是由于Mac OS X 10.8 SDK中引入的新功能引起的。尽管如此,它们中的很多仍然是backwards compatible to Mac OS X Snow Leopard 10.6

文本的Base SDK版本设置设置为Current OS X。假设其他开发人员在Mac OS X Mountain Lion 10.8上,他们将自动使用(当前最新的)10.8 SDK。即使10.8 SDK安装在10.7机器上,由于此操作系统相关设置,编译器也会选择10.7 SDK。

修复:在Textual的版本设置中,将Base SDK更改为OS X 10.8Latest OS X (OS X 10.8)即可使用新功能。
更改所有项目的设置,并确认该设置已被应用到各自的目标:主项目(文本)Blowfish加密框架超链接处理器架构河豚关键控制扩展吹嘘垃圾邮件分机,最后是System Profiler Extension。建筑原文(标准发布)现在应该可以工作。

相关提交:Conversion to modern Objective-C介绍10.8 SDK功能。

+0

即使将我的SDK更改为OSX 10.7上的10.8 w/xCode 4.5也无济于事。我仍然得到相同的3个错误。有任何想法吗? – sjmh

+0

@sjmh:你是否为所有项目更改* Base * SDK并重建它们?还有一个目标级别,但我认为默认设置为10.6。 –

+0

我假设你是指所有目标?我将它设置在主项目上,这似乎将更改推向所有目标(构建框架,清理,版本和实际文本目标)。经过验证的所有目标都显示为最新的BaseSDK。 http://imgur.com/yKw0g。我的错误略有不同(我读到了数组错误,在dict上阅读,在dict上阅读),但似乎与相同的问题有关。 – sjmh