lipo命令拆分、合并iOS静态库
针对有些第三方静态库中支持真机和模拟器多种CPU架构,比如armv6、armv7、armv7s、arm64,以及i386、x86_64。而有时候只需要使用其中的一种或者几种,比如APP打包上架的时候,就不能包含i386、x86_64的架构,这时候就可以从静态库中分离出各种架构,然后合并你所需要的。具体的举例如下:
首先先查看一下framework中包含的结构:
打开mac终端,cd到静态库的位置,输入命令
lipo -info ./XXXX.framework/XXXX
这时候会显示出该framework中所包含的架构
Architectures in the fat file: ./XXXX.framework/XXXX are: i386 x86_64 armv7 arm64
执行拆分的命令,这样就把armv7、arm64架构从静态库中剥离出来了,同理其他的CPU结构
lipo XXXX.framework/XXXX -thin armv7 -output XXXX_armv7
lipo XXXX.framework/XXXX -thin arm64 -output XXXX_arm64
执行合并的命令,把拆分出来的xxxx_armv7、xxxx_arm64合并成命名为xxxx的静态库
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包时出现的ERROR ITMS-90087: "Unsupported Architectures错误。
————————————————
版权声明:本文为CSDN博主「DaiveB」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/yepiaouang/article/details/79353377
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
2020-04-09 ffmpeg compile