iOS生成静态库方法
2.删除自动生成的MyFirstStaticLibrary.h和MyFirstStaticLibrary.m(因为是打包别人的类,不需要这两个文件,如果是自己制作就没必要删除了),在 自己需要打包下载工程,将XXXX.h和XXX.m拷贝到这个工程之中;
3注意,因为iOS模拟器是基于Mac OS平台X86架构,iOS设备都是给予ARM架构,所以给他们提供的静态库也必须对于他们的架构,幸运的是Xcode可以同时编译这两个架构的库;
编译的时候调到iOS Device , Product --> Build; 如果调到其他则不能编译出来静态库
我这是制作自己的库久不删除了
选择如下模式变色
编译成功后就会出来
选择.a文件Show in Finder出来如下
这就是Debug下的真机调试静态库我们可以通过终端看下他的信息
打开终端进入他的目录:输入cd 空格吧.a文件网里图删掉libMyFirstStaticLibray.a(你自己的库名)如下图
然后输入ls lipo -info ibMyFirstStaticLibray.a
调整运行设备为模拟器如下图:
运行编译后多出了模拟器的的包(模拟器下运行)
我们看下他的信息 在终端输入cd Users/ilink/Library/Developer/Xcode/DerivedData/MyFirstStaticLibrary-ezlqqdeuksbkiseqmiefxzbefdah/Build/Products/Debug-iphonesimulator
(Debug-iphonesimulator文件往终端拖就能得到)输入lipo -info libMyFirstStaticLibrary.a
我们一般都要想模拟器和真机都能用也就是说要并包
并包通过终端来做cd ..回到上级目录然后ls
再输入lipo -create Debug-iphonesimulator/libMyFirstStaticLibrary.a Debug-iphoneos/libMyFirstStaticLibrary.a -output libMyFirstStaticLibrary.a进行并包
然后可以看到
和debug-iphone同级的目录出来.a文件改文件就是目标文件
我们在终端下看下他的信息lipo -info libMyFirstStaticLibrary.a
可以看出他上两者的结合方法好虽好,但会牺牲空间,文件会变大
下面测试一下可以用不新建工程倒入.a和include文件
使用一下
控制台打印如下
到此完成
iOS生成静态库方法的更多相关文章
- IOS 生成静态库文件(.framework)
http://blog.csdn.net/zwl492454828/article/details/55095422
- IOS 生成静态库文件(.a文件)
http://www.cnblogs.com/lyy-5518/p/5459643.html
- 手淘架构组最新实践 | iOS基于静态库插桩的⼆进制重排启动优化 抖音研发实践:基于二进制文件重排的解决方案 APP启动速度提升超15% 编译期插桩
抖音研发实践:基于二进制文件重排的解决方案 APP启动速度提升超15% 原创 Leo 字节跳动技术团队 2019-08-09 https://mp.weixin.qq.com/s/Drmmx5JtjG ...
- Xcode 生成静态库相关设置:
Xcode 生成静态库相关设置: #Build Setting1. Architectures ------- Architectures -----> $(ARCHS_STANDARD) -- ...
- 在Linux下如何使用GCC编译程序、简单生成 静态库及动态库
最近在编写的一个Apache kafka 的C/C++客户端,,在看他写的 example中,他的编译是用librdkafka++.a和librdkafka.a 静态库编译的,,,而我们这 ...
- [转]Linux下用gcc/g++生成静态库和动态库(Z)
Linux下用gcc/g++生成静态库和动态库(Z) 2012-07-24 16:45:10| 分类: linux | 标签:链接库 linux g++ gcc |举报|字号 订阅 ...
- xcode6制作IOS .a静态库小记
xcode6制作IOS .a静态库小记 创建iOS静态库 简单写个打印的代码 编码完成之后,直接Run就能成功生成.a文件了,选择 xCode->Window->Organizer-> ...
- iOS基础 - 静态库
一.什么是库? 库是共享程序代码的方式,一般分为静态库和动态库. 二.静态库与动态库的区别? 静态库:链接时完整地拷贝至可执行文件中,被多次使用就有多份冗余拷贝. 动态库:链接时不复制,程序运行时由系 ...
- Ubuntu下通过makefile生成静态库和动态库简单实例
本文转自http://blog.csdn.net/fengbingchun/article/details/17994489 Ubuntu环境:14.04 首先创建一个test_makefile_gc ...
随机推荐
- IntelliJ IDEA常用快捷键windows
1 Alt+回车 导入包,自动修正 Ctrl+N 查找类Ctrl+Shift+N 查找文件Ctrl+Alt+L 格式化代码 Ctrl+Alt+O 优化导入的类和包Alt+Insert 生成代码( ...
- 【Web】URI和URL,及URL的编码
URI和URL是什么,以及他们的区别 URL,Uniform Resource Locator,统一资源定位符.用于表示网络上服务器的资源所在位置,比如我们输入浏览器的地址. URI,Uniform ...
- 刘子健的第二次博客——有关CCCCC语言(・᷄ᵌ・᷅)
刘子健的第二次博客--有关CCCCC语言(・᷄ᵌ・᷅) 下面又到了回答老师问题的时候啦-(・᷄ᵌ・᷅) 有些问题正在深思熟虑中!敬请期待近期的不间断更新! 你有什么技能比大多人(超过90%以上)更好? ...
- 脚本改yum源
- 如何用photoshop把图片白色背景变成透明?
1.当提示配置文件丢失时,选择“指定RGB模式”. 2.Ctrl+J是一个复合动作,复制+新建,会得到一个新图层. 3.选中新图层,点击鼠标左边工具条里面的魔棒工具,再用鼠标点击下图片的某处白色部分, ...
- Analyzer中进行货币转换
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- linux启动流程及自定义gurb
linux 启动流程 POST BIOS(boot sequence) 所选择的启动设备次序的MBR中是否有引导程序, ----> MBR(bootloader) 提供内核列表 -------& ...
- 参考__HTML5 Game
基础知识 TypeScript TypeScript 目录教程 Egret Egret II HTML5晃动DeviceMotionEvent事件 博客 html5tricks 库和框架 html5t ...
- What is SSL and what are Certificates?
Refer to http://www.tldp.org/HOWTO/SSL-Certificates-HOWTO/x64.html The content 1.2. What is SSL and ...
- 转!!java事务的处理
java的事务处理,如果对数据库进行多次操作,每一次的执行或步骤都是一个事务.如果数据库操作在某一步没有执行或出现异常而导致事务失败,这样有的事务被执行有的就没有被执行,从而就有了事务的回滚,取消先前 ...