静态库拆包,压包

第一步,新建一个文件夹,用来存放目标静态库的拷贝,如libWeChatSDK.a。

命令行:

新建并切换到目标路径
cd /Users/eric/desktop
&&
mkdir libWeChatSDK
&&
cd libWeChatSDK

拷贝
cp
/Users/eric/desktop/libWeChatSDK.a
./libWeChatSDK.a

第二步,查看包信息

命令行:
lipo -info libWeChatSDK.a

如提示fat file,代表这个包是支持多平台的,需要逐一解包然后重打包。
本例:Architectures in the fat file: libWeChatSDK.a are: i386 armv7 armv7s x86_64 arm64
所以我们需要重复5次一下步骤。

解包、打包步骤:
1、创建临时文件夹,用于存放解压后的.o文件,如i386:mkdir i386
2、取出i386平台的包:lipo libWeChatSDK.a -thin i386 -output i386/ libWeChatSDK-i386.a
3、查看库中所包含的文件列表:cd i386 && ar -t libWeChatSDK-i386.a
4、解压出object file(.o后缀文件):ar xv libWeChatSDK-i386.a
5、找到要删除的包(GCDAsyncSocket.o),删掉:rm GCDAsyncSocket.o
6、重新打包object file:cd .. && ar rcs libWeChatSDK-i386.a i386/*.o,可再次输入[2-5]中的命令检验是否删除成功
7、将其他几个平台包逐一做上述[1-6]操作
8、重新合并为fat file的.a文件: lipo -create libWeChatSDK -armv7.a libWeChatSDK -armv7s.a libWeChatSDK -i386.a -output libWeChatSDK -new.a
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值