近两三年一直在做静态库开发
1、在Xcode工程中创建静态库的Target,最初是手动Build出真机的.a文件,模拟器的.a文件,然后再用命令行合并
2、后来一些特殊的开发者,要求加入特殊的功能,或者开放特殊的接口和属性,只好用注释代码的办法来分别打包,分别合并。直到有一次,代码注释不完全,差点把包弄错了,只好想别的办法。多Target,一个包即创建一个Target。每个Target使用不同的编译开关。
3、再后来呀,特殊的包越来越多,比如带积分墙的包和不带积分墙的包等等四五个呢,即使Target分的很清楚,很次发包都是体力活呀。只好用脚本打包了,像这样:
xcodebuild -target TestTargets -configuration Release -sdk iphoneos -arch armv7 -arch arm64
xcodebuild -target TestTargets -configuration Release -sdk iphonesimulator -arch i386 -arch x86_64
然后再合并真机包和模拟器包就好了。
4、Xcode7,增加了Bitcode,原来的命令行没Bitcode,找到了解决方案:
xcodebuild OTHER_CFLAGS="-fembed-bitcode" -target TestTargets -configuration Release -sdk iphoneos -arch armv7 -arch arm64
参考资料:http://stackoverflow.com/questions/31486232/how-do-i-xcodebuild-a-static-library-with-bitcode-enabled