Xcode target build settings Architectures

先介绍一下 armhtml

Arm处理器,由于其低功耗和小尺寸而闻名,几乎全部的手机处理器都基于arm,其在嵌入式系统中的应用很是普遍,它的性能在同等功耗产品中也很出色。
Armv六、armv七、armv7s、arm64都是arm处理器的指令集,全部指令集原则上都是向下兼容的,如iPhone4S的CPU默认指令集为armv7指令集,但它同时也兼容armv6指令集,只是使用armv6指令集时没法充分发挥其性能,即没法使用armv7指令集中的新特性,同理,iPhone5的处理器标配armv7s指令集,同时也支持armv7指令集,只是没法进行相关的性能优化,从而致使程序的执行效率没那么高。
须要注意的是iOS模拟器没有运行arm指令集,编译运行的是x86指令集,因此,只有在iOS设备上,才会执行设备对应的arm指令集。
//关于Build Active Architecture Only属性
这个属性设置为yes,是为了debug的时候编译速度更快,它只编译当前的architecture版本。

编译出的版本是向下兼容的,好比你设置此值为yes,用iphone4编译出来的是armv7版本的,iphone5也能够运行,可是armv6的设备就不能运行。

因此,通常debug的时候能够选择设置为yes,release的时候要改成no,以适应不一样设备
//xcode报错问题
//例如:No architectures to compile for (ONLY_ACTIVE_ARCH=YES, active arch=x86_64, VALID_ARCHS=i386).

 1. Targets—>Build Settings—>Architectures—>Other,修改成$(ARCHS_STANDARD_32_BIT) 
 2. TARGETS->Build Setting -> Architectures ->Valid Architectures 改成 armv7 armv7s 3. 若是还不行把Build Active Architecture Only 改为No
目前IOS的指令集

armv6    iPhone、iPhone二、iPhone3G、第一代和第二代iPod Touch

armv7    iPhone四、iPhone4S

armv7s   iPhone五、iPhone5C

arm64    iPhone5S

详细请看 : http://www.cnblogs.com/meteoric_cry/p/3720831.html
http://www.cnblogs.com/mylizh/p/3971579.html?utm_source=tuicool&utm_medium=referralweb