iOS 生成静态库.a文件
2015-09-11 09:08
344 查看
静态库(.a)
IOS产生.a的静态库,比起.framework相对简单了好些。
下面介绍一下具体生成步骤:
1、新建一个framework&library库。IOS 下的cocoa touch static library。然后输入product name 为libsql
2、把libsql.h和libsql.m删除。导入ocsqlite.h和ocsqlite.c
3、修改scheme,设为release版本。
OK,选译ios device编译运行。成功后将在目录的build/products/release-iphoneos/下产生一个liblibsql.a文件。
注,这里产生的是真机使用的.a文件。
选译iphonesimulator 进行编译一次,同样会在build/products/release-iphonesimulator/下产生一个liblibsql.a文件。
这里是虚拟机使用的.a文件。
下面来看一下这两个文件有什么不同之处,使用lipo -info命令。
打开终端。
进入到相应的目录。
真机的:liblibsql.a文件信息。
input file liblibsql.a is not a fat file
Non-fat file: liblibsql.a is architecture: armv7
如图:
模拟器的:liblibsql.a文件信息。
input file liblibsql.a is not a fat file
Non-fat file: liblibsql.a is architecture: i386
如图:
如果使用真机和模拟器通用,则需要将这两个文件合并,使用命令lipo -create xxxx/liblibsql.a xxxxx/liblibsql.a -output libsql.a
同样可以使用lipo -info 来查看这个合并的libsql.a
可以看到architectures in the fat file: libsql.a are: i386 armv7
如图:
IOS产生.a的静态库,比起.framework相对简单了好些。
下面介绍一下具体生成步骤:
1、新建一个framework&library库。IOS 下的cocoa touch static library。然后输入product name 为libsql
2、把libsql.h和libsql.m删除。导入ocsqlite.h和ocsqlite.c
3、修改scheme,设为release版本。
OK,选译ios device编译运行。成功后将在目录的build/products/release-iphoneos/下产生一个liblibsql.a文件。
注,这里产生的是真机使用的.a文件。
选译iphonesimulator 进行编译一次,同样会在build/products/release-iphonesimulator/下产生一个liblibsql.a文件。
这里是虚拟机使用的.a文件。
下面来看一下这两个文件有什么不同之处,使用lipo -info命令。
打开终端。
进入到相应的目录。
真机的:liblibsql.a文件信息。
input file liblibsql.a is not a fat file
Non-fat file: liblibsql.a is architecture: armv7
如图:
模拟器的:liblibsql.a文件信息。
input file liblibsql.a is not a fat file
Non-fat file: liblibsql.a is architecture: i386
如图:
如果使用真机和模拟器通用,则需要将这两个文件合并,使用命令lipo -create xxxx/liblibsql.a xxxxx/liblibsql.a -output libsql.a
同样可以使用lipo -info 来查看这个合并的libsql.a
可以看到architectures in the fat file: libsql.a are: i386 armv7
如图:
相关文章推荐
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 不可修补的 iOS 漏洞可能导致 iPhone 4s 到 iPhone X 永久越狱
- iOS 12.4 系统遭黑客破解,漏洞危及数百万用户
- 每日安全资讯:NSO,一家专业入侵 iPhone 的神秘公司
- [转][源代码]Comex公布JailbreakMe 3.0源代码
- 修复mysql数据库
- nodejs中的fiber(纤程)库详解
- 桌面中心(一)创建数据库
- 浅析C语言头文件和库的一些问题
- 深入探讨Linux静态库与动态库的详解(一看就懂)
- 桌面中心(三)修改数据库
- 目前流行的JavaScript库的介绍及对比
- js判断客户端是iOS还是Android等移动终端的方法
- IOS开发环境windows化攻略
- .net平台推送ios消息的实现方法
- linux生成(加载)动态库静态库和加载示例方法
- MySql表、字段、库的字符集修改及查看方法
- 探讨Android与iOS,我们将何去何从?