1,制作.a文件的静态库(没有图片资源)
创建.a文件的静态库项目实现自己需要封装的方法
生成已经编译好的.a静态库(注意,项目名最好用英文,上面是为了方便识别,才使用中文,)
查询.a静态文件的位置
2,使用.a静态库
3, 出错: 调试!
错误:Undefined symbols for architecture i386:(x86_64 / i386 /arm64 / armv7s / armv7 )
原因:静态库的架构不对!
生成.a静态库时,是在iPone6的模拟器 而在项目中,是在iPone5的模拟器中运行!
iPone一共有5种架构:
模拟器架构(2种):
i386: 4S /5 (32位)
x86_64:5S --->6S (64位)
真机架构(3种):
armv7:4/4S
armv7s:5/5C最特殊的一代默认已经不支持输出
arm64:5S -->6S
怎么查看架构?
在终端输入命令:lipo -info 静态库路径
怎么合成5种架构?
1) 使用合成命令合成! 语法:
合成命令:lipo -create静态库1.a静态库2.a -output新静态库.a
1,将已经在模拟器iPone 6下,编译好的静态库,剪切存放在新的文件夹里面
2,在iPone 5的模拟器下,直接运行!(.a的静态库文件,会由红色变为黑色)
3,在终端,输入命令 lipo -create静态库1.a静态库2.a -output新静态库.a,(合成了新的静态库)
2) 一次性编译适用,真机或者模拟器的所有版本!(注意需要编译两个版本(真机+模拟器))
如要适用,所有真机+模拟器的所有版本,则需要分别编译,然后再用命令合成新的.a静态库3)对于iPone 5 和 iPone5C 的真机架构(armv7s),该如何适用 ?
2014年10月后,iPone就不在支持armv7s的架构,那么真机该如何,该如何适用所有版本的架构呢?
Build Active Architecture Only -->No
选中静态库->选中TARGETS -> Build Settings -> Architectures ->添加arm64 armv7 armv7s ->选中真机运行
网友评论