部署到OS X 10.6并且在使用旧运行时的平台上不支持"-fobj-arc"

 whdibk30 发布于 2023-02-13 09:45

背景:

我正在为OS X构建一个应用程序,部署目标为10.6.我没有完全将我的应用程序转换为ARC,但是我添加了一些可以从ARC中受益的新类,所以我-fobj-arc为这些类设置了编译器标志.

通用32/64位英特尔架构的编译失败,使用旧版运行时的平台不支持错误-fobj-arc.

仅64位构建成功.

我不熟悉低级架构.我的问题是:仅为64位Intel构建的影响是什么?这会阻止应用程序完全在10.6上运行吗?或者只有一些机器运行10.6?

1 个回答
  • OS X的Objective-C的32位运行时相当陈旧.Apple将它们移动到64位时更新了运行时,但是对32位运行时没有做太多.

    至于仅为64位构建:大多数Mac现在都有64位处理器.但是,10.6确实支持32位计算机:你将把这些用户留在尘埃中.

    我创建了一个有助于过渡到ARC 的标头,因为您可以在64位硬件上而不是在32位硬件上定位ARC,两者都可以工作.然而,这实际上违背了ARC的目的,因为您仍然需要管理保留和释放,它们只是在构建ARC代码时被注释掉.

    2023-02-13 09:48 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有