ios9.2 之静态库

刚升级Xcode7.2,用起来很是不习惯.前几天打包静态库.a文件时就遇到了问题: 

1.把Debug-iphonesimulator 里的.a文件以及.h文件拖拽到项目中,用模拟器编译时,选择iPhone5s及以上都正常,但iPhone5及以下就出现了以下错误,

用 lipo -info [文件路径]  :显示静态库文件的架构类型, 只有 x86_64 ,而没有 i386 .  记得当时打包为.a文件时,选择模拟器的 IOS Simulators是iPhone 6s plus ,如果选择iPhone5 及以下,结果恰恰相反(只有i386,而没有x86_64).  纠结这个问题好久,查看了很多资料都没提到.最终在一个国外网站看到有人已经解决,如下.

解决方式一定要把Build Active Architecture only改为NO,如下:


下面简单来说一下静态库的制作:

1.选择FrameWork & Library 下的 "Cocoa Touch Static Library"


2.输入静态库名称

3.添加需要打包的库资源,要实现的方法,属性 ,逻辑处理好

4.选择需要暴露出来的.h文件,.m文件会自动编译到.a文件中 


点击+号,添加 .h文件



5.要把Build Active Architecture only改为NO


6. 选择真机设备,然后Command + B编译,libStaticTest.a文件会从红色变为黑色 

7.选择模拟器,然后Command + B编译,模拟器和真机环境下用的.a文件是分开的 

8.右击"show in Finder",查看制作好的.a文件. 



注:  1).Debug-iphoneos 文件夹里面的东西使用在真机上    

2).Debug-iphonesimulator 文件夹里面的东西是在模拟器运行的.

9.合并两个文件(不是必须)  如果想让一个.a文件能同时用在真机和模拟器上,需要进行合并

在终端输入指令:lipo -create [文件路径1] [文件路径2] -output [生成文件路径/XXX.a]

注:   lipo -info [文件路径]  :显示静态库文件的架构类型


花了大半个小时写下这篇博客,希望对不理解的攻城狮有所帮助.







在终端输入指令:
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值