2010-06-08 56 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