2012-05-10 122 views
3

我正在處理幾個具有良好共享代碼的iOS項目,因此我正在靜態庫中收集該代碼。具有共享依賴關係的多個靜態庫 - iOS

現在,讓我們說,我有我的工作3個靜態庫:

  1. 庫A包含通用的實用功能
  2. 庫B包含一個組類
  3. 庫C包含第二組類

(且A是B和C的依賴性)

現在,我的最終PR oject需要利用所有三個庫中的功能。我知道A可以與B,C和我的最終項目靜態鏈接,但是在那一點上我會得到一個鏈接器錯誤,因爲有多個相同類的實現。

這樣的情況應該如何處理?

回答

6

對於其他人想知道這件事,我發現你可以通過在每個庫中包含頭文件來獲得我想要的行爲,但只能與其中一個鏈接。

在我在我的問題中列出的例子,我的主要項目將針對A,B和C鏈接。然而,使用圖書館乙& C,可以包括B中& C A的頭文件,但那麼只能在根項目中對A進行鏈接。

如果有人有更好的建議,請隨時分享。

另外,還有一個名爲Cocoapods的項目,它是一個iOS依賴項管理器。似乎值得關注。