type
status
date
slug
summary
tags
category
icon
password
由于目前项目中集成了支付宝和 ZBar 二维码库,支付宝的
AlipayRsaLib.a
与 ZBar 的 base64.o
同名,导致编译不通过。搜索后发现这个冲突似乎是不光在他俩之间,在百度地图SDK以及 TencentOpenAPI 中都存在类似冲突。 在支付宝论坛中查找后得知 AlipayRsaLib.a
并不依赖 base64.o
,因此我们可以把 base64.o
从中删除。下面是从
AlipayRsaLib.a
中删除 base64.o
的操作。1. 查看.a文件支持的 CPU 架构
2. 按照平台拆分.a文件
拆分后的.a文件分别放到不同文件夹下。
在网上看到
lipo -thin
命令不支持 armv7s 的,这个我并没有遇到,可以看看lipo info
是否有输出 armv7s 有的话应该就是可以拆分出来的,我是可以正常拆分的。3. 解压拆分后的.a文件
注意:上面三个命令是分别在三个不同的文件夹下执行的
解压后可以删除对应的.o文件,这里删除的是
base64.o
。注意要在三个文件夹里吧这个文件全部删除4. 合并解压后的.o文件
注意:上面三个命令同样是分别在三个不同的文件夹下执行的
5. 合并重新生成的.a文件
至此我们就把AlipayRsaLib.a中的base64.o给删除掉了