我有一个使用 GC 进行内存管理的应用程序和一个执行自动引用计数的框架。当我尝试构建它时,出现此错误:
Linked dylibs built for retain/release but object files built for GC-only for architecture x86_64
是否有在这个 GC 应用程序中使用 ARC 框架而不进行更改的正确方法?我记得读到过 ARC 代码似乎可以与非 ARC 代码一起工作,但我只找到了每个文件的编译器开关 (-fobjc-arc
)。
最佳答案
没有。 ARC 代码适用于手动保留-释放代码,但不适用于 GC 代码。仅为垃圾收集而构建的框架无法与手动保留释放代码或 ARC 一起使用;以 GC 可选模式构建的框架对两者的工作原理相同。
关于objective-c - GC 应用程序可以链接到 ARC 框架吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9326597/