IOS 打包静态库详细介绍

2020-01-18 17:35:00王冬梅

打包静态库如何实现,打包静态库,IOS,打包静态库的方法

                                                                测试

 

选择Iphone7模拟器运行,程序正常运行,点击模拟器屏幕,打印日志如下:

打包静态库如何实现,打包静态库,IOS,打包静态库的方法

                                                             日志输出

 

我们可以看到输出没有问题,打包.a静态库大功告成。

但是,别高兴的太早。当我把模拟器切换成Iphone5运行时,编译直接不通过,报错如下:

打包静态库如何实现,打包静态库,IOS,打包静态库的方法

                                                             iPhone 5模拟器运行时的编译错误

 

上图“Undefined symbols for architecture i386”是什么意思呢?意思是我们的libStaticLib.a静态库不支持i386架构。那i386又是什么鬼?不清楚的可以拉上去看“iOS 设备的CPU架构”,这里就不多做解释了。

iPhone 5模拟器正好是i386架构,而我们打包的静态库不支持。但是iPhone 7模拟器运行却没有问题,这说明我们打包的静态库正好支持iPhone 7模拟器 的cpu架构 x86_64。如何查看静态库所支持的架构,请看下一步。

6、终端查看静态库所支持的架构

终端->cd进入库文件路径->lipo -info 库名

打包静态库如何实现,打包静态库,IOS,打包静态库的方法

                                               终端查看静态库所支持的架构