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就是最后,真机版和模拟器版合并的版本;