当前位置: 代码迷 >> Iphone >> iphone静态库合拢
  详细解决方案

iphone静态库合拢

热度:74   发布时间:2016-04-25 06:34:35.0
iphone静态库合并

? ? ?对iPhone项目来说,静态库对于设备(Device)和模拟器(Simulator)的编译是不一样的。需要链接静态库的工程在编译Device和Simulator的时候需要区别对待。需要链接到不同的静态库。这就很麻烦。
解决方法是使用lipo指令,将Device静态库和Simulator静态库合并为一个肥静态库,链接静态库的工程只需要链接这个肥静态库即可满足Device和Simulator的编译。指令在命令行工具中输入
lipo -create build/Debug-iphoneos/libname.a build/Debug-iphonesimulator/libname.a -output libname.a
?
? ? ? 这样在命令行输入指令还是麻烦,最好能够在Xcode中自动进行合并操作。
这样需要在静态库工程中添加一个Run script,方法是右键Targets->Add->New Target,选择Other->Shell Script Target,在Run Script中输入以上命令,编译这个RunScript即可完成合并操作。如果想要把Device和Simulator的静态库编译也自动化,在RunScript中添加编译即可。


  相关解决方案