xcode6制作IOS .a静态库小记
xcode6制作IOS .a静态库小记
创建iOS静态库
简单写个打印的代码
编码完成之后,直接Run就能成功生成.a文件了,选择 xCode->Window->Organizer->Projects->Your Project, 打开工程的Derived Data目录,这样就能找到生成的.a文件了,如图
静态库就生成了
导入静态库
如果你要导入静态库,有三种方式
第一种:
1. 是把include 和 .a通过Add Files to “MyLib”方式加入工程 等同 加到target工程->Build Phases->Link Binary With Libraries里面
2. 是否 copy 根据自己需求勾选
第二种:
- 把生成.a的工程直接拖到要使用的项目工程.xcodeproj(这样就完成了静态库文件的添加)
- 然后在Build Phases->Target Dependencies 点击“+”把静态库工程的target加入到里面(将生成静态库文件的工程添加到主工程中,然后在Target Dependencies设置依赖关系。)
- 接下来,我们还要在build settings –> Other Linker Flag 添加标记 “-ObjC”
- 在你的工程中,添加头文件路径,build settings –> Header Search Paths。将我们需要的头文件路径,添加到Hearder Search Paths里面。这样就不会出现找不到头文件的问题了。(一般找不到头文件的时候,多半是这个Header search paths没有设置好)
- 如果我们添加的库文件(.a) 文件,是红色的,说明我们没有编译成功,我们需要device编译。(网上说:这个是xcode6的一个bug)
过程如下:
问题:
操作:
运行:
其实我觉得在主工程中添加子工程是和在导入一个第三方库文件是没有什么区别的。不同的就是我们可以在一个工作区里面同时控制两个target文件。方便管理。
第三种:
1. 在Build Settings中设置对应的.a(这个就是将我们需要使用的静态库文件添加到Build setting中去)
2. 头文件的搜索路径。在你的工程中,添加头文件路径,build settings –> Header Search Paths。将我们需要的头文件,添加到Hearder Search Paths里面。(注意:添加的路径是头文件的目录路径,并不是这个头文件的路径)
转载地址:http://blog.csdn.net/yangzhen19900701/article/details/41748049
xcode6制作IOS .a静态库小记的更多相关文章
- Xcode6.1标准Framework静态库制作方法。工程转Framework,静态库加xib和图片。完美解决方案。
http://www.cocoachina.com/bbs/read.php?tid-282490.html Xcode6.1标准Framework静态库制作方法.工程转Framework,静态库加x ...
- ios中静态库的创建和使用、制作通用静态库(Cocoa Touch Static Library)
创建静态库可能出于以下几个理由: 1.你想将工具类代码或者第三方插件快捷的分享给其他人而无需拷贝大量文件.2.你想让一些通用代码处于自己的掌控之下,以便于修复和升级.3.你想将库共享给其他人,但不想让 ...
- iOS制作Static Library(静态库),实现多工程的连编
在iOS开发中,我们会发现一些偏底层或基础代码是直接可以复用的,当我们换一个项目,改变的只需要是偏上层的业务逻辑代码,所以我们可以把这部分基础代码制作为一个静态库static library,并不断扩 ...
- iOS基础 - 静态库
一.什么是库? 库是共享程序代码的方式,一般分为静态库和动态库. 二.静态库与动态库的区别? 静态库:链接时完整地拷贝至可执行文件中,被多次使用就有多份冗余拷贝. 动态库:链接时不复制,程序运行时由系 ...
- 关于VS2013下制作和使用静态库和动态库
关于VS2013下制作和使用静态库和动态库 引言 什么是库:库是写好的现有的,成熟的,可以复用的代码. 所谓静态.动态是指链接.将一个程序编译成可执行程序的步骤: 静态库在链接阶段,会将汇编生成的目标 ...
- 手淘架构组最新实践 | iOS基于静态库插桩的⼆进制重排启动优化 抖音研发实践:基于二进制文件重排的解决方案 APP启动速度提升超15% 编译期插桩
抖音研发实践:基于二进制文件重排的解决方案 APP启动速度提升超15% 原创 Leo 字节跳动技术团队 2019-08-09 https://mp.weixin.qq.com/s/Drmmx5JtjG ...
- iOS开发中静态库制作 之.a静态库制作及使用篇
iOS开发中静态库之".a静态库"的制作及使用篇 一.库的简介 1.什么是库? 库是程序代码的集合,是共享程序代码的一种方式 2.库的类型? 根据源代码的公开情况,库可以分为2种类 ...
- IOS .a静态库的和.framework制作
什么是库? 库是程序代码的集合,是共享程序代码的一种方式 根据源代码的公开情况,库可以分为2种类型 开源库 公开源代码,能看到具体实现 比如SDWebImage.AFNetworking 闭源库 不公 ...
- iOS .a静态库的制作及使用
一.制作.a静态库 1.创建静态库工程,工程命名为BaseSDK,生成的.a文件名变成libBaseSDK.
随机推荐
- Jqprint 轻量级页面打印插件
最近项目中需要在页面上添加一个打印的按钮,上网搜索了一下就发现了这个好用的超轻量插件,使用起来很方便 1.首先需要引入必须的js文件 <script language="javascr ...
- php 文件上传后缀名与文件类型对照表(几乎涵盖所有文件)
网上有很多php文件上传的类,文件上传处理是php的一个特色(至少手册上是将此作为php特点来展示的,个人认为php在数组方面的优异功能更有特 色),学php的人都知道文件上传怎么做,但很多人在编程中 ...
- Laravel PHP Web开发框架
Laravel是一套简洁.优雅的PHP Web开发框架(PHP Web Framework).它可以让你从面条一样杂乱的代码中解脱出来:它可以帮你构建一个完美的网络APP,而且每行代码都可以简洁.富于 ...
- JDK与Tomcat的联系
如果服务器没有安装JDK或没有配置JDK环境变量,则Tomcat启动出错 报错:需要JAVA_HOME 或JRE_HOME环境变量 所以必须首先安装JDK 配置环境变量 web服务器Tomcat才能运 ...
- QQ空间API接口
(以下内容可能会随着时间改变而改变!) 查看对方QQ空间的背景音乐 http://qzone-music.qq.com/fcg-bin/cgi_playlist_xml.fcg?json=0& ...
- 舵机的PWM控制学习随笔
舵机的控制信号,对于脉宽调制信号的脉宽变换,常用的一种方法是采用调制信号获取有源滤波后的直流电压,但是需要50Hz(周期是20ms)的信号,这对运放器件的选择有较高要求,从电路体积和功耗考虑也不易采用 ...
- SOA和微服务
SOA和微服务 SOA和微服务到底是什么关系? 说实话,我确实不明白SOA和微服务到底有什么本质上的区别,两者说到底都是对外提供接口的一种架构设计方式.我倒觉得微服务其实就是随着互联网的发展,复杂的平 ...
- 简单的贴图显示shander
Shader "ztq/Diffuse" { Properties { _Color ("Main Color", Color) = ...
- SOC
http://marsvaadin.iteye.com/blog/1311438 http://blog.csdn.net/cxxsoft/article/details/12610641
- 宏中"#"和"##"的用法
一.一般用法 我们使用#把宏参数变为一个字符串,用##把两个宏参数贴合在一起. 用法: #include<cstdio> #include<climits> using nam ...