一、在工程指令集選項中:
1、Architectures(體系結(jié)構(gòu)):指定工程被編譯成可支持哪些指令集類型,支持多少種,就會編譯出包主多少個指令集的數(shù)據(jù)包。
2、Valid Architectures(有效體系結(jié)構(gòu)):限制可能被支持的指令集的范圍,最終打包編譯出哪種指令集的包,將由Architectures與Valid Architectures 的交集來確定。
3、Build Active Architecture Only(只構(gòu)建當(dāng)前連接設(shè)備的體系結(jié)構(gòu)):是否只對當(dāng)前連接設(shè)備所支持的指令集編譯,?YES 只編譯當(dāng)前的architecture版本,而設(shè)置為NO時,會編譯所有支持的版本。
4、Generate Debug Symbols(生成調(diào)試符號):Enables or disables generation of debug symbols. When debug symbols are enabled, the level of detail can be controlled by the build 'Level of Debug Symbols' setting. 官方的說明是這樣的,設(shè)置為 YES 時,編譯產(chǎn)生包會大一點。設(shè)置為NO的時候,在Xcode中設(shè)置的斷點不會中斷。但是在程序中打印[NSThread callStackSymbols],依然可以看到類名和方法名(詳細(xì)就自行g(shù)oogle)。
在iOS中的指令集有:armv7、armv7s、arm64、i386、x86_64,其中 armv7、armv7s、arm64 是ARM處理器的指令集,i386、x86_64 是Mac處理器的指令集。指令集支持的設(shè)備如下:
arm64:5s, 6, 6p, 6s, 6sp, 7, 7p
armv7s:5, 5c
arm7:4, 4s
i386:模擬器32位
x86_64:模擬器64位