如何在XCode中为两个体系结构(模拟器,iphoneos)构建一个库

时间:2009-05-13 19:25:29

标签: objective-c xcode architecture

我为iPhone做了一个小库,我想重新分发,但是我找不到如何编译它以在模拟器和iphone上工作。我知道有一种方法可以为这两种架构构建一个lib.a,但我无法理解它。

4 个答案:

答案 0 :(得分:1)

首先,您显然必须将您的代码放入框架中。这适用于链接到同一项目中存在的应用程序,但是您已经注意到iPhone不支持动态链接。

我在谷歌代码上提供的一个库有一个脚本,可以为iPhone和iPhone模拟器构建自定义SDK。我把脚本放在以下StackOverflow answer中。这也有代码的链接,所以如果帖子不够,你可以下载和播放项目中的设置。

答案 1 :(得分:1)

您可以使用lipo工具创建包含模拟器,armv6和armv7版本的通用二进制文件。

答案 2 :(得分:0)

将Xcode目标的“有效架构”设置设置为i386和iPhone之一(我不知道哪个是,也许有人会建议)。

答案 3 :(得分:0)

这是一种批量多重构建工作。因此脚本编写是合适的常规解决方案。 关键概念是混合命令xcodebuildlipo

请参考我在这个问题上的答案: Build fat static library (device + simulator) using Xcode and SDK 4+