如何将现有库添加到我的iPhone项目

问题描述:

所以,这不是一个非常复杂的问题,但是因为在我需要您的建议之前我从未做过。如何将现有库添加到我的iPhone项目

我有我的主项目,其中包括2个生成主项目使用静态库的子项目。 现在,我想为我的项目添加一个Loggin框架,并且我希望能够在我的主项目中以及在我的静态库中使用它。 正如你可以见证here,这不是很难,只需要包含3个文件。

但是,我不确定最好的办法是什么。 将这3个文件添加到每个项目中可能会导致符号重新定义。 仅仅添加到一个静态库是不够的,除非我让另一个依赖于它,这在逻辑上不是很正确。 我大概可以从这3个文件中创建另一个静态库项目,并使我的项目和我的另外2个子项目依赖于它,但感觉像是一种矫枉过正。

这里最好的做法是什么?

谢谢!

将这些文件放在另一个单独的库或框架中将是我的要求。

你应该重新考虑一下,如果你确实需要在静态库中预编译你的子项目(提供给你的优势是什么?他们真的是那么大的重编译它们,现在又是那么麻烦?)。

一个包含所有东西的单个Xcode项目可能是一个更好的解决方案,而且我通常都喜欢这些日子。这样,您也不必担心缺少lib库中的体系结构,或者使用编译器版本编译lib,并使用另一个主项目编译lib,libs中的错误可以更容易地调试和跟踪,等等......

+0

The原因是从来没有节省编译时间,把这些子项目放在1个主项目中就不会产生任何编译开销,除非文件被改变,否则它们不会再被编译,并且如果它们改变它们(或静态lib)将不得不重新编译。纠正我如果我在这里错了,我想念一些东西。分离的主要原因是这两个静态库在我的iPhone和我的Mac应用程序中都使用。 – Idan 2011-04-30 21:09:25

+0

此外,这是一个单独的逻辑,可以应用于我可能拥有的任何未来项目。无论如何,这是一个耻辱,我将不得不为这3个文件创建另一个静态库子项目。希望另一个建议会弹出。 – Idan 2011-04-30 21:10:17

+0

@Julio - 因为有时你可能想要一个项目使用不同的编译器设置到另一个。例如C++ 11 – MickyD 2012-06-18 07:26:33