Xcode12模拟器打包静态库支持arm64架构引发的系列问题总结
问题:真机模拟器库无法合并,报错:have the same architectures (arm64) and can't be in the same fat output file
分析:Xcode12之前:编译模拟器静态库支持i386 x86_64两架构;编译真机静态库支持armv7 arm64两架构。在使用lipo -create -output命令可以将两个库合并成一个支持模拟器和真机i386 x86_64 armv7 arm64四种架构的胖子库。但是现在Xcode12编译的模拟器静态库也支持了arm64,导致出现真机库和模拟器库不能合并的问题。【have the same architectures (arm64) and can't be in the same fat output file】
解决办法:
1.如果有静态库工程:在工程里面进行如下设置
Build Settings -> Excluded Architectures里按照这样设置一下,再编译合并就不会报错了。
lipo XXX.a -remove arm64 -output XXX.a