首页 > 其他 > 详细

(IOS)关于Xcode的架构(Architectures)设置

时间:2014-02-27 13:20:06      阅读:514      评论:0      收藏:0      [点我收藏+]

首先来了解一下Architectures中几个参数的含义

ARMv6:ARM11内核用于iPhone2G和iPhone3G中的架构 

ARMv7:modern ARM内核用于iPhone3GS和iPhone4/S中的架构 

ARMv7s:A6内核用于iPhone5中的架构 

ARM64:A7内核用于iPhone5S/C中的架构 

 

然后在Xcodebuild settingArchitectures一栏中有几个比较重要的选项,而代码的编译架构一般设置以下两项:ArchitecturesValid Architectures。其中Architectures是指项目编译时生成哪几个架构的二进制指令,项目建成时会自动选择,但在Xcode5中其选择的结果是默认包含ARM64,若果项目使用没有在ARM64上编译的第三方库,通常会有很多错误或告警而编译不过,这时就必须将ARM64去掉,即选择armv7 armv7s,因为ARM的指令是向前兼容的,即使这样选择也能在iPhone5S/C上运行。

但在Valid Architectures一项中,必须选上你要支持的具体架构类型,比如这项没有arm64的话就不能在iPhone5S/C上运行了。

这里我猜测在Architectures选上最新的架构是为了app能使用架构对应的新硬件功能或提升运行效率,而库文件的架构则必须统一。而它尽管向前兼容,但有对应架构的二进制指令可能效率会最优。暂时没有找到文献,得到证据后补上。

文献地址:http://www.mobinett.com/2013/09/20/ios-7-xcode-5-project-build-settings-for-architectures-and-arm64-support/

(IOS)关于Xcode的架构(Architectures)设置,布布扣,bubuko.com

(IOS)关于Xcode的架构(Architectures)设置

原文:http://www.cnblogs.com/mingfung-liu/p/3569597.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!