GNUstep Objective-C Runtime 旨在与 Clang 一起使用的 Object开源项目

我要开发同款
匿名用户2021年09月27日
175阅读

技术信息

开源地址
https://github.com/gnustep/libobjc2
授权协议
MIT

作品详情

GNUstepObjective-CRutime被设计为GCCRutime 的替代品。它支持三种ABI:

旧的GCCABI,它提供对Objective-C1.0特性的支持。这可以通过Clag中的-fobjc-rutime=gcc标志或用GCC编译来选择。最初的GNUstep o-fragile ABI,旨在与GCCABI兼容,但提供对现代Objective-C功能的支持。这可以通过Clag中的-fobjc-rutime=gustep-1.9标志来选择。现代(v2)ABI,提供了更丰富的反射元数据、更小的二进制文件和更少的内存使用。这是在Clag7.0或更高版本中用-fobjc-rutime=gustep-2.0标志选择的。通过在CMake配置中将OLDABI_COMPAT标志设置为OFF,可以在不支持旧ABI的情况下构建运行时。这将产生一个较小的二进制文件,它不会链接到使用旧ABI的代码。

所有ABI都支持GCC运行时之外的以下功能:

现代Objective-C运行时API,最初是在OSX10.5中引入的。Blocks合成的属性访问器对@sychroized()的有效支持依赖于类型的调度,消除了不匹配的选择器造成的堆栈损坏支持MacOSX10.6引入的相关参考API。支持MacOSX10.7引入的自动引用计数API

 

功能介绍

GNUstep Objective-C Runtime 被设计为 GCC Runtime 的替代品。它支持三种 ABI: 旧的 GCC ABI,它提供对 Objective-C 1.0 特性的支...

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论