iOS 打包静态类库 lib.a

流程

1: xcode---新建项目---iOS-framework&Library-----Cocoa touch Static Library----Next

2:建立工程之后---Target-----build phases----

在第一栏:Target Depencies里面,添加该静态库的依赖

在第二栏:Complie Sources 里面,添加要编译的所有的 .m 文件;

在第三栏:Link binary With 里面,添加 静态库,依赖的,所有其他framework

在第四栏:Copy files 里面,添加所有 展示给别人能够看到的头文件 .h 文件,以及一些不能编译的资源文件,比如图片,bundle资源文件;

3:编译为 模拟器的  静态类库;选择一个模拟器编译;

4:编译为 真机版的 静态库;选择 iOS Device 或是一个真机设备 ,编译;

5:在 product 目录下,看到libxxx.a 右键,show in finder 即可找到对应编译的库

其中:iphoneos 目录,为编译的真机版本库,iphonesimulator 目录为模拟器下编译的版本;

6:在 终端下 使用 lipo -info + lib.a文件 ,查看 编译静态类库的 arm框架;

arm 框架对应的 iOS 设备

armv6:   iPhone, iPhone2, iPhone3G以及第一代和第二代iPod Touch

armv7:

iPhone3GS, iPhone4

iPad, iPad2, the new ipad

iPod touch 3G, iPod touch 4

armv7s: iPhone5,5c

arm64: iPhone5s

其中上图:i386 x8664 指的是 mac 电脑模拟器;

7:使用 lipo -create 命令,把 真机版本和模拟器版本 合并成一个 libxxx.a

lipo -create path/simulator.a path/device.a -output path/libxxx.a

例如:

lipo -create Release-iphonesimulator/libOpenStack.a Release-iphoneos/libOpenStack.a -output libOpenStack.a

最后生成的 libOpenStack.a就是最后,真机版和模拟器版合并的版本;

iOS 打包静态类库 lib.a的更多相关文章

  1. iOS打包静态库(完整篇)

    1. 什么是库? 所谓库就是程序代码的集合,是共享程序代码的一种方式. 2. 库的分类 根据程序代码的开源情况,库可以分为两类 开源库源代码是公开的,你可以看到具体实现.比如GitHub上比较出名的第 ...

  2. ios打包静态库

    1. 什么是库? 所谓库就是程序代码的集合,是共享程序代码的一种方式. 2. 库的分类 根据程序代码的开源情况,库可以分为两类 开源库源代码是公开的,你可以看到具体实现.比如GitHub上比较出名的第 ...

  3. iOS 打包静态库.a文件(真机版 + 虚拟机)

    我们以打包IOS开发中封装的高地地图基础功能包 GDMap为例. 1>我们需要准备好需要打包的GDMap     2>接下来我们开始新建一个工程文件取名GDMap     3>删掉无 ...

  4. iOS 静态类库 打包 C,C++文件及和OC混编

    iOS 静态类库 编译 C,C++ 我们都知道,OC 原生支持C, 在 创建的 OC类的 .m 里面,可以直接编写C的代码: 同样 Xcode 也支持 OC ,C++的混编,此时,我们通常把OC创建的 ...

  5. iOS 解压打包静态库命令

    p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px "Hannotate SC" } p.p2 { margin: 0.0px ...

  6. iOS 静态类库项目的建立与使用

    iOS 静态类库项目的建立与使用   新建 Xcode workspace 打开 Xcode , 选择 File -> New -> Workspace , 将 Workspace 命名为 ...

  7. webpack配置:打包第三方类库、第三方类库抽离、watch自动打包、集中拷贝静态资源

    一.打包第三方类库 下面说2种方法: 第一种: 1.引入jQuery,首先安装: npm install --save-dev jquery 2.安装好后,在index.js中引入,用jquery语法 ...

  8. iOS开发——打包静态库与Framework

    最近老是需要做接口给别的客户,就顺便把打包的过程也写一下吧! 一.静态库 静态图里面只能是纯文件,里面不能再有第三方打包的静态库,也就是说,静态库不能打包静态库.这个用的比较多,一般自己公司写出来的东 ...

  9. 使用CocoaPods开发并打包静态库

    Cocoapods作为OS X和iOS开发平台的类库管理工具,已经非常完善和强大.通常我们用pod来管理第三方开源类库,但我们也极有可能会开发一个用pod管理依赖关系的静态类库给其他人使用,而又不愿意 ...

随机推荐

  1. 2016年10月11日 星期二 --出埃及记 Exodus 18:22

    2016年10月11日 星期二 --出埃及记 Exodus 18:22 Have them serve as judges for the people at all times, but have ...

  2. Java过滤器原理方法

    过滤器可以对资源的请求和相应提供过滤功能,配置在web.xml文件中.过滤器可用来实现以下功能1. 权限过滤2. 登陆和检查验证3. 图像转换4. 数据压缩5. 加密6. 令牌验证7. 触发访问资源的 ...

  3. 再议extern和include的作用

    先引入一下题啊,主要是看到有人这样写 我个人觉的这样写没什么意思,没有体现出了extern的特性.   为什么我要这样说,先谈谈include,总是有人觉得这个东西很神秘,很特殊不知道他干了什么.其实 ...

  4. CentOS7安装Docker,运行Nginx镜像、Centos镜像

    摘要 总体思路:yum命令直接安装Docker,下载想要的镜像并启动 1.环境,CentOS7 Minimal 64位,Docker必须要64位的系统 2.通过yum命令直接安装,yum instal ...

  5. SqlSever基础 rtrim与ltrim嵌套使用 除去字符串左右两边的空格

    镇场诗:---大梦谁觉,水月中建博客.百千磨难,才知世事无常.---今持佛语,技术无量愿学.愿尽所学,铸一良心博客.------------------------------------------ ...

  6. wamp出现could not execute run action问题

    wamp出现could not execute run action问题     原文地址:http://blog.sina.com.cn/s/blog_4a60ba9c0100zzlr.html上午 ...

  7. 最大熵模型(Maximum Etropy)—— 熵,条件熵,联合熵,相对熵,互信息及其关系,最大熵模型。。

    引入1:随机变量函数的分布 给定X的概率密度函数为fX(x), 若Y = aX, a是某正实数,求Y得概率密度函数fY(y). 解:令X的累积概率为FX(x), Y的累积概率为FY(y). 则 FY( ...

  8. .NET在后置代码中输入JS提示语句(背景不会变白)

    来源:http://niunan.iteye.com/blog/248256 Page.ClientScript.RegisterStartupScript(Page.GetType(), " ...

  9. Redis核心知识之—— 时延问题分析及应对、性能问题和解决方法【★★★★★】

    参考网址: Redis时延问题分析及应对:http://www.cnblogs.com/me115/p/5032177.html Redis常见的性能问题和解决方法:http://www.search ...

  10. http1.1和http1.0区别

    http1.1和服务器建立连接可以获得多个资源 http1.0和服务器建立连接可以获取一个值