如何解决项目中.a文件中的.o冲突
项目中使用了yuemengsdk.a 现又加入了百度 libbaiduNaviSDK.a 有了冲突
我们需要把.a文件中的.o文件删除
第一步
先将项目备份..万一没玩好..去哪说理~~
第二步
在桌面新建文件夹 把需要的.a文件放在新建的文件夹中
cd到该目录下查看该文件的cup架构命令行如下
fenghedeMacBook-Pro:合并 fenghe$ lipo -info libbaiduNaviSDK.a Architectures in the fat file: libbaiduNaviSDK.a are: i386 armv7 x86_64 arm64
我们看到支持4种 i386 armv7 x86_64 arm64 在这里我们介绍下
因为该.a中包含着4种架构,所以我们要分别对他们读取并拆分
执行命令行对.a文件进行arm64架构读取
lipo libbaiduNaviSDK.a -thin arm64 -output libbaiduNaviSDK_arm64.a
然后用同样的方法对其他三种架构进行读取
读取完成后的效果如下
因为我们要对不同类型的架构进行拆分.拆分后会有很多文件,所以我们将每种架构新建个文件夹放入,防止拆分后混淆
然后使用命令行分别对不同架构进行拆分并删除其中重复的.o文件
cd 到arm64文件夹目录下 执行
ar -x libbaiduNaviSDK_arm64.a
分别在4个文件夹目录下执行以上命令行
执行完毕就代表拆分完毕.然后搜索一下报错的.o文件并删除
紧接着合并文件(此时之前根目录下的libbaiduNaviSDK.a文件就可以删除了,因为合并后会生成一个新的文件.)
在arm64文件目录下执行
fenghedeMacBook-Pro:arm64 fenghe$ libtool -static -o ../libbaiduNaviSDK_arm64.a *.o
执行完毕后会在根目录下生成libbaiduNaviSDK_arm64.a文件,这就是合并完成的文件. 还需要在其他三个文件夹下执行对应的上述命令行 执行完毕效果如下
最后将所有架构类型的.a进行终极合并
cd 到根目录下 执行
fenghedeMacBook-Pro:合并 fenghe$ lipo -create -output libbaiduNaviSDK.a libbaiduNaviSDK_arm64.a libbaiduNaviSDK_armv7.a libbaiduNaviSDK_i386.a libbaiduNaviSDK_x86_64.a
执行完毕后会在根目录下生成新的.a文件.将其替换掉项目中的即可
欢迎大家加入我的iOS(OC/swift/flutter)技术群 不闲聊只技术交流 闲聊勿扰了
201708926
转载于:https://www.cnblogs.com/baxiu/p/11276959.html
如何解决项目中.a文件中的.o冲突相关推荐
- 简单的MapReduce项目,计算文件中单词出现的次数
简单的MapReduce项目,计算文件中单词出现的次数 计算文件中单词出现的次数,试题如下图 1.创建读取单词的文件tast,内容如下: hadoop core map reduce hiv hba ...
- Android:Android NDK项目中C++文件中打印日志
Android NDK项目中C++文件中打印日志 工作需要,在NDK项目中的C++文件中打印日志,还是费了点劲查找 才达到自己 想要的效果了. 步骤 添加头文件 添加头文件 定义宏函数 #includ ...
- centos 解决“不在 sudoers 文件中。此事将被报告“的问题
centos 解决"不在 sudoers 文件中.此事将被报告"的问题 参考文章: (1)centos 解决"不在 sudoers 文件中.此事将被报告"的问题 ...
- vue样式中背景图片路径_解决vue打包css文件中背景图片的路径问题
vue-cli写完的静态页面我们在node环境中引入没有问题,但是打包后放在Apache环境下,路径却有问题了 如一个简单css语句 .welcome { width: 420px; height: ...
- 解决Zotero显示pdf文件中的图片左上角有黑色遮挡的问题
解决Zotero显示pdf文件中的图片左上角有黑色遮挡的问题 在菜单编辑选择"首选项": 弹出如下图所示的对话框. 3. 选择"高级"-"设置编辑器& ...
- python读excel乱码_解决Python2.7读写文件中的中文乱码问题
Python2.7对于中文编码的问题处理的并不好,这几天在爬数据的时候经常会遇到中文的编码问题.但是本人对编码原理不了解,也没时间深究其中的原理.在此仅从应用的角度做一下总结, 1.设置默认编码 在P ...
- Myeclipse中js文件中的乱码处理
Myeclipse中js文件中的乱码处理 导入外部js文件到MyEclipse中打开是乱码,无法设置使用哪种编码格式,总不能在里面加上<%@ page pageEncoding="UT ...
- 在linux中的文件中查找_如何在Linux中查找文件
在linux中的文件中查找 如果您是Windows用户或OSX的非超级用户,则可能使用GUI查找文件. 您可能还会发现界面有限,令人沮丧或两者兼而有之,并且学会了精于组织事物并记住文件的确切顺序. 您 ...
- 计算机内用户文件夹中的文件,在位于计算机上所有用户的AppData文件夹中的文件中修改一行...
我想修改位于计算机上所有用户的AppData文件夹中的文件中的一行.在位于计算机上所有用户的AppData文件夹中的文件中修改一行 线在prefs.js文件来改变开始: user_pref(" ...
最新文章
- Centos 7使用vsftpd搭建FTP服务器
- 985博士分享Pytorch与Tensorflow,哪个更值得你学习?
- 配置Trunk实现相同Vlan通信
- virtual hust 2013.6.23 数学杂题基础题目 M - Quotient Polynomial
- 大话算法-排序-归并排序
- Asp.Net数据库编程-10条最优方法[翻译]
- 如何让梯形变成平行四边形_开放的课堂 创新的天地——平行四边形的面积教学片段与反思...
- web前端安全编码(模版篇)
- 使用base标签后图片无法加载_Spring 源码学习(二)-默认标签解析
- python安装sklearn_让机器学习自动帮我们建模,这4个Python库能让你大开眼界!
- wordpress页面前端添加编辑按钮
- cobbler自动化系统安装
- python数据分析师工作内容_数据分析师的具体工作职责和工作内容有哪些?
- python使用selenium调用edge浏览器webdriver
- worklist 需要传的参数
- HTML5响应式手机模板:MUI手机app前端页面开发框架模板HTML+CSS+JavaScript
- Python菜鸟快乐游戏编程_pygame
- Floating point exception
- Python爬虫入门教程15:音乐网站数据的爬取
- Echarts广东省福建省地图修正
热门文章
- Scala集合的常用方法:sum/max/min/product
- redis事务及watch使用示例
- MySQL官方提供的测试数据库脚本和数据文件下载
- 通过ClassLoader加载硬盘上的图片到内存及ImageIO的使用
- Spring的jar包下载及目录详解
- php发送https请求,php post 请求https接口
- QT 生成二维码接口封装
- 从ucOS谈,为什么需要操作系统?
- linux下的几种进程间通信方式的特点
- python(numpy,pandas1)——numpy(ndim,shape,size,zero, empty, arange, linspace)