.a库的制作(合并真机和模拟器的方法)
2016-09-02 13:18
134 查看
在制作ios的静态库时,在模拟器运行生成的静态库只能在模拟器上运行,如果想要制作成模拟器和真机都能同时兼容的静态库,我们得通过命令去合并模拟器和真机生成的静态库。
如下图所以
只能支持模拟器的静态库在真机上面运行会报undefined symbols for architecture arm64的错误。
Debug-iphoneos 文件夹里面的东西是用在真机上的
Debug-iphonesimulator 文件夹里面的东西是用在模拟器上的
.a 文件的体积(一般情况下)
真机用的 .a > 模拟器用的 .a
所合成 .a == 真机用的 .a + 模拟器用的 .a
通过 lipo –info libHKEncryptLib.a 可以查看 .a 的类型(模拟器还是真机)
解决办法:
打开终端 ,在终端上输入 lipo -create /Users/hicard/Library/Developer/Xcode/DerivedData/***/Release-iphoneos/libHKEncryptLib.a /Users/hicard/Library/Developer/Xcode/DerivedData/***/Release-iphonesimulator/libHKEncryptLib.a -output /Users/hicard/Library/Developer/Xcode/DerivedData/***/Build/Products/libHKEncryptLib.a
如下图所以
只能支持模拟器的静态库在真机上面运行会报undefined symbols for architecture arm64的错误。
Debug-iphoneos 文件夹里面的东西是用在真机上的
Debug-iphonesimulator 文件夹里面的东西是用在模拟器上的
.a 文件的体积(一般情况下)
真机用的 .a > 模拟器用的 .a
所合成 .a == 真机用的 .a + 模拟器用的 .a
通过 lipo –info libHKEncryptLib.a 可以查看 .a 的类型(模拟器还是真机)
解决办法:
打开终端 ,在终端上输入 lipo -create /Users/hicard/Library/Developer/Xcode/DerivedData/***/Release-iphoneos/libHKEncryptLib.a /Users/hicard/Library/Developer/Xcode/DerivedData/***/Release-iphonesimulator/libHKEncryptLib.a -output /Users/hicard/Library/Developer/Xcode/DerivedData/***/Build/Products/libHKEncryptLib.a
相关文章推荐
- 合并第三方真机和模拟器的.framework或(静态库.a)文件的方法
- iOS开发之制作framework并将模拟器Framework与真机Framework合并
- 制作,利用lipo 编译合并iPhone模拟器和真机通用的静态类库
- 关于真机模拟器framework和.a合并为通用的方法
- 制作,利用lipo 编译合并iPhone模拟器和真机通用的静态类库
- lipo 模拟器.a 真机.a 合并
- 使用lipo合并iPhone模拟器和真机的静态类库
- 模拟器与真机下ffmpeg的编译方法(总结版)
- 利用lipo编译合并iPhone模拟器和真机通用的静态类库
- 模拟器与真机下ffmpeg的编译方法(总结版)
- 利用lipo编译合并iPhone模拟器和真机通用的静态类
- 使用lipo合并iPhone模拟器和真机通用的静态库(类)
- iOS合并静态库,适用真机模拟器
- 模拟器与真机下ffmpeg的编译方法(总结版)
- 模拟器与真机下ffmpeg for iOS的编译方法
- 使用lipo合并iPhone模拟器和真机的静态类库
- 开发技巧: 利用lipo 编译合并iPhone模拟器和真机通用的静态类库
- lipo合并iPhone模拟器和真机的静态类库
- 如何合并模拟器和真机的lib包
- 模拟器与真机下ffmpeg的编译方法(总结版)