我正在开发几个iOS项目,这些项目将有很多共享代码,所以我在静态库中收集代码。
现在假设我有3个我正在使用的静态库:
(和A是B和C的依赖关系)
现在,我的最终项目需要利用所有三个库的功能。我知道A可以与B,C和我的最终项目静态链接,但是在那时我会得到一个链接器错误,因为有多个相同类的实现。
如何应对这种情况?
答案 0 :(得分:6)
对于其他任何想知道这一点的人,我发现你可以通过在每个库中包含头文件来获得我想要的行为,但只能链接到一个。
在我的问题中概述的示例中,我的主要项目将链接到A,B和C.但是,要在库B和B中使用A. C,你可以在B& B中包含A的头文件。 C,但只能在根项目中链接到A.
如果有人有更好的建议,请随时分享。
顺便说一下,有一个名为Cocoapods的项目是iOS依赖项管理器。这似乎值得关注。