2010-03-22 26 views
2

我已经在Cocoa Touch环境中构建了一个可以很好地工作的静态库。现在我想编译它也为可可..我可以有一个单一的XCode项目与不同的SDK目标?是否有一些资源能够提供有关这种(和其他)意义上的最佳做法的提示?MacOS/iPhone库交叉编译的最佳实践

回答

1

这过去两个月我一直在努力正是这个任务(交叉编译静态库的iPhone /安卓/苹果机OS/Linux/Windows的...

这当然是可能的,一个很好的办法,是增加一个外部xcode项目作为你的第一个xcode项目的目标,所以你为Mac OS X,iPhone和其他你想支持的平台创建一个新的“Active Configuration”。如何使用辅助Xcode项目作为构建静态库的主要项目的目标,这是一种很酷的方式,因为如果你调试了,例如你仍然拥有库的所有符号等。

+0

谢谢,这指出我在正确的方向! – 2010-03-25 11:26:13

+0

没问题,告诉我,如果你有其他问题! – Goles 2010-03-25 16:54:37

1

它可以完成,但它需要一些手动调整构建。

开始与Xcode Build System Guide.

由于完成这一个非正式的方式,你可以创建两个单独的项目和完全相同的一组的库源文件到每个项目中添加引用。设置一个项目为Cocoa-Touch编译,另一个为Cocoa编译。如果两个项目都引用相同的文件,则在一个项目中所做的更改将自动反映到另一个项目中。 (如果你有两个项目都打开,Xcode会抱怨文件已被另一个应用程序改变,否则它不会注意到。)

我有一个工具类,我不断地转储新方法。我将它添加到每个项目和公园的方法,因为我需要它。新方法显示在旧项目中,因为源文件在所有项目中共享。