2008-12-17 39 views
3

我期待分發開源iPhone應用程序和我有關於使得光源分佈中的幾個問題:如何使用Xcode自動構建iPhone應用程序的源代碼發佈?

  1. 我怎麼能自動創建與XCode的源存檔(或磁盤鏡像)?我想要一個構建目標的源代碼(如果有必要,首先清理目標,但如果不需要,它會很好)。我還有一個外部netbeans項目,它帶有一個ruby腳本,用於構建該程序所需的SQL數據庫(但可以根據需要製作一個單獨的歸檔文件)。

  2. 什麼是識別構成'源'的文件的最佳方式?它是清除所有目標後剩下的東西嗎?任何關於這種方法的警告(我不太相信IDE會清理它們看起來所有的東西 - 也可能包括它不應該包含的任何代碼化的東西)?

回答

4

您可以將運行腳本構建階段添加到任何目標以對構建進行後處理。正確的做法通常是創建一個首先構建您的構建產品目標的聚合目標,然後在輸出上運行腳本。

很難識別所有的「源」文件。它通常是$(SRCROOT)中的所有內容,但如果您的項目是以Root - >(src)(projfiles)方式佈局的,$(SRCROOT)將只包含您的項目文件,而不包含任何源。您可能必須將至少頂級項目佈局的知識編碼到腳本中,並在其更改時對其進行維護。

儘管它是默認設置,但如果要歸檔源代碼,您可能不希望將生成文件夾放在項目文件夾中,因爲您經常會獲取中間體,項目索引和其他ep件。在項目的「獲取信息」檢查器的「常規」窗格中,將「構建產品和中間體」目錄設置爲項目目錄外的某個公共位置。這將簡化檔案來源的工作。

而Xcode有一個內置的歸檔機制,稱爲快照;你可能想要使用它,儘管它不直接自動化。但快照確實知道你所有的來源。

0

嗯,我到目前爲止還沒有答案,所以我將從另一個方向使用make和命令行來接近它。我打算用這個問題的答案:

Building Qt Xcode Projects From the Command Line

...然後使用標準的「製作」的方法來構建應用程序和源代碼分發歸檔。

0

嘗試的總目標的建議調用下面的腳本:

#/斌/ bash的-x

CD 「$ BUILT_PRODUCTS_DIR」

APPFILE = 「$ PROJECT_NAME.app」

IPAFILE =「$ PROJECT_NAME。IPA」

如果[ 「$ BUILD_STYLE」= 「分佈」];然後

rm -f "$APPFILE.zip" && zip -ry "$APPFILE.zip" "$APPFILE" && open . 

的elif [ 「$ BUILD_STYLE」= 「BetaTesting」];然後

rm -rf "$IPAFILE" iTunesArtwork Payload && \ 
cp ../../Apple/iTunesArtwork . && \ 
mkdir Payload && cp -Rp "$APPFILE" Payload && \ 
zip -r "$IPAFILE" iTunesArtwork Payload && open . 

音響

錯誤,也許這是對不同問題的答案,但...

3

將SRCROOT環境變量設置爲l要存檔的來源,cd到項目目錄,並執行

xcodebuild installsrc build -configuration <configname> -target <targetname> 

的「installsrc」 ocation生成操作複製項目源到$ {} SRCROOT。

相關問題