关于制作.a文件及.framework文件合并模拟器和真机库方法及问题

一、制作.a、.framework文件注意点
1、修改配置 Active Architecture Only修改为NO,否则生成的静态库就只支持当前选择设备的架构。
2、修改静态库需要支持的版本,Build Settings中 iOS Deployment Target(也可在project中Info选择)
2、制作.a文件时,Build Phases中copy Files(或者添加Header)中添加外部所需头文件;制作.framework时,Build Phases中Header里在public中暴露出外部所需头文件。
二、合并模拟器、真机库
1、终端输入 lipo -info xxx.a 可查看当前静态库中包含的处理器类型,是真机还是模拟器,i386、x86_64,属于模拟器,用到真机会报错,同样armv7、arm64,属于真机,用到模拟器就会报错。
2、lipo -create xxx.a(一个静态库路径) xxx.a(另一个静态库路径) -output xxx.a(生成的静态库路径)。
3、运行第二步可能会报错,例:have the same architectures (arm64) and can't be in the same fat output file...,这种情况是因为模拟器和真机库中皆包含arm64,可通过lipo xxx.a(其中一个静态库路径) -remove arm64 -output xxx.a(目标静态库路径)。完成后再次运行2步骤即可,此时会得到合并后的静态库.a。
4、使用时将合并后的.a文件及暴露出来的头文件拖入工程中即可使用。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容