LLVM 5.1编译错误“已弃用isa”

时间:2014-03-20 07:37:56

标签: ios json llvm jsonkit

我在libJSONKitJSONKit.m中遇到编译错误。 错误是这样的:"Assignment to Objective-C's isa is deprecated in favor of object_setClass()" 还有一个次要错误:       "Direct access to Objective-C's isa is deprecated in favor of object_getClass()".

有关变通方法或解决方案的建议吗?

2 个答案:

答案 0 :(得分:8)

只需按照错误消息中的建议操作:

变化:

object->isa  = SomeClass;

为:

object_setClass(object, SomeClass);

答案 1 :(得分:0)

您可能必须从项目设置中删除64位架构。

这种情况正在发生,因为Apple将arm64添加为更新到iOS 7.1和Xcode 5.1的标准体系结构的一部分。 您可能需要手动将其设置为armv7,armv7s ...... JSONKit尚不支持arm64。