3

我正在尝试将旧项目转换为 ARC。我的项目依赖于 Cocos2D,它是一个第三方非 ARC 库。所有 Cocos2D 源文件都是单独目标的一部分,并被编译为静态库。

但是,ARC 迁移ARC semantic issue器在 Cocos2D 源文件中返回错误,即使它们不是我要转换的主要目标的一部分。

这可能是什么原因?那个源代码应该没关系,对吧?

4

1 回答 1

1

一般来说,最安全的做法是不对不属于您的代码执行 ARC 转换。因此,您可以告诉编译器不要将 ARC 与 Cocos2D 代码一起使用,方法是进入目标设置中的“构建阶段”,按照Transitioning to ARC Release Notes-fno-objc-arc中的说明添加标志。您只需展开“Build Phases”的“Compile Sources”部分,双击Cocos2D 源文件,然后在弹出框中输入。-fno-objc-arc

话虽如此,我很欣赏可能涉及很多 .m 文件。因此,有一些消息来源提出了处理 Cocos2D 和 ARC 的不同方法,例如在 Cocos2D 项目中启用 ARC

于 2012-12-12T22:51:49.537 回答