2013-03-23 156 views
4

我有一個Xcode項目(富)它建立了一些重要的前/後生成步驟一個靜態庫(libfoo.a)。傳統上,當我在另一個項目中使用這個庫時,我在主項目中添加foo.xcodeproj作爲子項目,然後在主項目中連接構建依賴關係設置。如何爲具有靜態庫目標的項目創建PodSpec?

我期待與的CocoaPods使它更容易些,但我不知道它的設計的。我是否應該將foo項目中的構建設置複製到pod規範中,以便CocoaPods可以按照它的方式構建它?我的前/後製作步驟如何?

另外,對封閉源代碼pre-compiled libraries像TestFlightSDK創建莢的信息,但我不希望我的預編譯庫。

+0

你想出貨只有u和.h文件,而不是Xcode項目,如果我的理解是否正確? – 2015-05-19 14:19:05

回答

0

使用pre_install hook(0.17文檔與語法的微小變化),你可以執行任何你需要的生成操作。

此掛鉤的使用不會在主回購鼓勵,但因爲它是支持私人規格。

+0

有點破解,但這會奏效。謝謝。 – brianpartridge 2013-03-25 22:34:00

+0

出於好奇,在乾淨的實施中你期待什麼? – Fabio 2013-03-26 11:27:31

+0

理想情況下,我可以指定一個xcodeproj文件和一個目標,並且Pods項目會將其作爲子項目拉入並將該目標設置爲依賴項。這樣,當libPods.a構建時,它會在我的目標結果中建立並靜態鏈接。我所有的構建步驟都會運行,項目維護人員不需要額外的工作。 – brianpartridge 2013-03-27 00:29:09

0

用的CocoaPods你不需要關心目標本身。它使用庫中的所有源文件創建一個新項目,並創建一個包含所有Pod依賴項的libPods.a。

如果您創建具有正確SOURCE_FILES和public_header_files一個Podspec,它應該只是工作。

+0

是的,我知道它是如何工作與libPods.a等等。我擔心的是,有更多的措施,不僅僅是一些編譯器標誌源文件的編制方法(代碼生成爲例)的構建過程。我希望我的完整構建過程能夠運行,而不僅僅是編譯。 – brianpartridge 2013-03-24 01:33:45

0

可以使用prepare_command掛鉤(documentation),並在其中使用CocoaPods使用的ruby gem xcodeproj(xcodeproj site)更改您的Xcode項目。我不確定,但可能可以添加構建腳本。

不知道這是否被接受或者不進行公共回購podspecs。

0

好像有已經爲你解答: Create podspec to ship static library

有揭示兩種方式(作爲.A +頭庫,或作爲.framwerork)

想想.framework是一個首選的方法分享。

相關問題