ARC:将编译器标志设置为-fno-objc-arc并生成错误

在关于为特定类禁用ARC编译器机制的stackoverflow主题之后,我在Compile Sources部分的Compiler Flags列(TARGETS项目中的Buil Phases选项卡)中添加了-fno-objc-arc参数。 即使设置已经被validation,我也无法构build我的应用程序,因为编译器说在ARC下不能使用retain, release, etc.

我如何解决上述问题? 先谢谢你。

您是否使用迁移工具来执行迁移? 您是否将编译器标志添加到所有具有发布/保留的文件?

我在这里写了关于ARC迁移的文章 。

是的如果你正在使用ARC的iPhone应用程序,这是真的。 您不能使用编译器自动放置的这些消息来手动retain, release, etc. 。 您应该正确地检查您的代码,哪些类会出错。 我想是的retain, release, etc.对于启用ARC的类,您仍然在使用retain, release, etc. 。 所以首先检查你的课程,发生错误。