首页 > 代码库 > iOS 打包.a文件

iOS 打包.a文件

1、新建一个 framework&library 库。IOS 下的 cocoa touch static library。然后输入 product name 为 libsql


2、把libsql.h 和libsql.m删除。导入ocsqlite.h和ocsqlite.c



3、修改scheme,设为release版本



4.

选译 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 

如图:


如果使用真机和模拟器通用,则需要将这两个文件合并,使用命令 lipocreate xxxx/liblibsql.a xxxxx/liblibsql.a -output libsql.a

同样可以使用 lipo -info 来查看这个合并的 libsql.a
可以看到 architectures in the fat file: libsql.a are: i386 armv7

OK,cheers,打包完成。 


iOS 打包.a文件