2010-06-08 55 views
29

我想为iPhone构建一个静态库。我想给我的用户一个.a库,它们可以用于模拟器测试和设备测试。我必须在模拟器模式和设备模式下构建两个库吗?有没有什么方法可以构建一个可以用于两种平台的单一方法?如何为iPhone模拟器和设备建立一个库?

回答

83

编译你的库两次。一旦使用设备SDK,并再次使用Simulator SDK。然后用lipo命令行工具创建一个“胖”库。

lipo -create libdevice.a libsimulator.a -output libcombined.a 

这应该给你你需要的东西。

+0

感谢您快速准确的答复。 – 2010-06-08 10:11:40

+1

使用库的应用程序需要做什么特别的事情吗?我尝试使用我正在编写的库进行此操作,并且在编译使用该库的示例应用程序时遇到了与体系结构不匹配的错误。 – pr1001 2010-08-22 00:07:45

+0

您不需要做任何事情来区分“胖”库中的体系结构。如果在使用lipo之前没有使用正确的SDK构建原始库,您可能会看到该错误。 – Jasarien 2010-08-22 01:24:22