我正在尝试使用LLVM GCC 4.0编译器进行编译,并且我在多个.m文件中收到此错误:ARC禁止显式消息发送'release' 我尝试使用-fno-objc-arc作为编译器标志但返回错误:无法识别的命令行选项“-fno-objc-arc”。
我该如何解决这个问题?
答案 0 :(得分:45)
只需删除对-release
的所有来电。您无权在ARC下拨打-release
,因为编译器会为您插入所有必要的retain
/ release
来电。详细了解ARC here。
另一种方法是使用转换工具,Xcode可以为您将项目转换为ARC(包括删除这些调用):
要完全禁用ARC,请更改构建设置:
但是我建议你开始使用ARC,它会让事情变得更容易,实际上也更快。
答案 1 :(得分:0)
如果您正在使用ASI(http://allseeing-i.com/ASIHTTPRequest/How-to-use)api,请参阅此答案,因为需要使用特定类的{fno-obj-arc标志构建... Files doesn't support the ARC feature, how to deal with和请参阅标题为“为该一个班级禁用ARC”的答案