armv7 armv7s arm64

arm處理器以其低功耗和小尺寸而聞名,幾乎所有的手機處理器都是基於arm,在嵌入式系統中應用非常廣泛。
 
armv6, armv7, armv7s, arm64指的是arm處理器的指令集。
i386, x86_64指的是pc端處理器指令集。
 
所有指令集原則上是向下兼容的。
 
arm64:iPhone6s | iphone6s plus|iPhone6| iPhone6 plus|iPhone5S | iPad Air| iPad mini2(iPad mini with Retina Display)
armv7s:iPhone5|iPhone5C|iPad4(iPad with Retina Display)
armv7:iPhone4|iPhone4S|iPad|iPad2|iPad3(The New iPad)|iPad mini|iPod Touch 3G|iPod Touch4


i386是針對intel通用微處理器32位處理器
x86_64是針對x86架構的64位處理器


模擬器32位處理器測試需要i386架構,
模擬器64位處理器測試需要x86_64架構,
真機32位處理器需要armv7,或者armv7s架構,
真機64位處理器需要arm64架構。
 
xcode中,指令集相關的選項主要有三種:
1,Architectures:該選項指定工程可被編譯成支持何種指令集的數據包。由於工程會針對每一種指令集編譯出對應的二進制數據包,所以支持的指令集越多,對應生成的ipa包就越大。
2,Valid Architectures:限制了工程可支持的指令集範圍。即,工程最終支持的指令集在valid architectures定義的這個範圍之內,所以工程最終編譯出的包支持的指令集將由Architetures和Valid Architectures選項定義的指令集的交集決定。
3,Build Active Architecture Only:設定是否只編譯出當前連接設備所支持的指令集。一般,debug的時候可指定爲YES,爲了debug的時候編譯速度快;release的時候指定爲NO,以適應不同的設備。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章