我有一个使用GC进行内存管理的应用程序和一个执行自动引用计数的框架。当我尝试构建它时,我收到了这个错误:
Linked dylibs built for retain/release but object files built for GC-only for architecture x86_64
是否有正确的方法在此GC应用程序中使用ARC框架而不更改它?我记得读过ARC代码似乎与非ARC代码一起工作,但我只找到每个文件的编译器开关(-fobjc-arc
)。
答案 0 :(得分:1)
没有。 ARC代码使用手动保留释放代码,但不适用于GC代码。为垃圾收集而构建的框架不适用于手动保留释放代码或ARC;在GC-optional模式下构建的框架对两者都有相同的作用。