lipo命令拆分、合并iOS静态库
針對有些第三方靜態(tài)庫中支持真機(jī)和模擬器多種CPU架構(gòu),比如armv6、armv7、armv7s、arm64,以及i386、x86_64。而有時候只需要使用其中的一種或者幾種,比如APP打包上架的時候,就不能包含i386、x86_64的架構(gòu),這時候就可以從靜態(tài)庫中分離出各種架構(gòu),然后合并你所需要的。具體的舉例如下:
首先先查看一下framework中包含的結(jié)構(gòu):
打開mac終端,cd到靜態(tài)庫的位置,輸入命令
lipo -info ./XXXX.framework/XXXX
這時候會顯示出該framework中所包含的架構(gòu)
Architectures in the fat file: ./XXXX.framework/XXXX are: i386 x86_64 armv7 arm64
執(zhí)行拆分的命令,這樣就把a(bǔ)rmv7、arm64架構(gòu)從靜態(tài)庫中剝離出來了,同理其他的CPU結(jié)構(gòu)
lipo XXXX.framework/XXXX -thin armv7 -output XXXX_armv7
lipo XXXX.framework/XXXX -thin arm64 -output XXXX_arm64
執(zhí)行合并的命令,把拆分出來的xxxx_armv7、xxxx_arm64合并成命名為xxxx的靜態(tài)庫
lipo -create XXXX_armv7 XXXX_arm64 -output XXXX
具體的拆分合并命令如下
mkdir ./bak
cp -r XXXX.framework ./bak
lipo XXXX.framework/XXXX -thin armv7 -output XXXX_armv7
lipo XXXX.framework/XXXX -thin arm64 -output XXXX_arm64
lipo -create XXXX_armv7 XXXX_arm64 -output XXXX
mv XXXX XXXX.framework/
這樣就得到了剔除了i386、x86_64的framework,避免了上傳ipa包時出現(xiàn)的ERROR ITMS-90087: "Unsupported Architectures錯誤。
————————————————
版權(quán)聲明:本文為CSDN博主「DaiveB」的原創(chuàng)文章,遵循CC 4.0 BY-SA版權(quán)協(xié)議,轉(zhuǎn)載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/yepiaouang/article/details/79353377
總結(jié)
以上是生活随笔為你收集整理的lipo命令拆分、合并iOS静态库的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java获取ip地址不重复,如何在and
- 下一篇: java综合项目推荐,推荐20个5月最热