該靜態(tài)庫不支持arm64.
##armv6
iPhone例朱、iPhone 3G
iPod 1G超升、iPod 2G
##armv7
iPhone 3GS盗棵、iPhone 4
iPod 3G缆毁、iPod 4G、iPod 5G
iPad船庇、iPad 2坪郭、iPad 3个从、iPad Mini
##armv7s
iPhone 5、iPhone 5C
iPad 4
##arm64
iPhone 5S iPhone 6 iPhone 6Plus
iPad Air, Retina iPad Mini
Architectures
該編譯選項指定了工程將被編譯成支持哪些指令集歪沃,支持指令集是通過編譯生成對應(yīng)的二進(jìn)制數(shù)據(jù)包實現(xiàn)的嗦锐,如果支持的指令集數(shù)目有多個,就會編譯出包含多個指令集代碼的數(shù)據(jù)包沪曙,造成最終編譯的包很大奕污。
指令集是向下兼容的。比如液走,armv7s指令集的設(shè)備菊值,可以兼容運行使用armv7、armv6編譯的程序育灸。
錯誤分析:
打包以后的庫文件,我們查看信息
然后打入如下命令:lipo -info .a文件完整路徑
這個靜態(tài)庫只支持x86_64(x86的庫是在模擬器上跑的) . 我的工程中Valid Architectures和Architectures中均包含了arm64的指令集,這就是說明我需要編譯的app最終要支持arm64的,而程序中用到的靜態(tài)庫并沒有arm64,導(dǎo)致了出錯.