ARC在iOS 6中工作,但在iOS5.1中不起作用

时间:2012-12-01 08:27:49

标签: iphone cocos2d-iphone box2d box2d-iphone

我正在尝试为我的cocos2dbox2d应用程序启用ARC(自动引用计数)功能,因此我将使用此link。 ARC已成功启用,应用程序在iOS 6中正常运行,但ios 5.1中的应用程序崩溃相同。崩溃报告是

2012-12-01 13:33:07.753 SampleApp[6397:707] cocos2d: **** WARNING **** CC_ENABLE_GL_STATE_CACHE is disabled. To improve performance, enable it by editing ccConfig.h

2012-12-01 13:33:07.757 SampleApp[6397:707] cocos2d: cocos2d v2.0.0
2012-12-01 13:33:07.761 SampleApp[6397:707] cocos2d: Using Director Type:CCDirectorDisplayLink

dyld: lazy symbol binding failed: Symbol not found: _objc_setProperty_nonatomic
  Referenced from: /var/mobile/Applications/03ACE817-3A67-456C-914A-90BC00B4AD38/SampleApp.app/SampleApp
  Expected in: /usr/lib/libobjc.A.dylib

dyld: Symbol not found: _objc_setProperty_nonatomic
  Referenced from: /var/mobile/Applications/03ACE817-3A67-456C-914A-90BC00B4AD38/SampleApp.app/SampleApp
  Expected in: /usr/lib/libobjc.A.dylib

检查此图片: <code>enter image description here</code>

任何人帮助我......

...谢谢

2 个答案:

答案 0 :(得分:0)

如果您遇到此错误,请将部署目标设置为4.3。默认情况下,它设置为6(最新)。一旦我们将所有项目和子项目设置为相同的部署目标,问题就会消失。如果要在应用程序中启用ARC,则需要将部署目标设置为5.0及更高版本。

答案 1 :(得分:0)

我自己遇到过这个问题。我正在使用Cocos2d与ARC,这意味着我将cocos2d代码作为库提取。我将目标ios设置为5.1用于app目标,但6.1用于构建设置中的cocos2d库目标。一旦我将cocos2d库设置为5.1,它就可以正常工作。