2009-08-25 4 views
2

Wie kann ich in XCode ein Shell-Skript aufrufen, bei dem es sich um ein PERL-Skript handelt, das die .app- und .dsym-Dateien in ein anderes Verzeichnis kopiert? Ich möchte den Namen des Projekts und/oder das Stammverzeichnis des Projekts an das Skript übergeben. Ich möchte, dass das Skript jedes Mal aufgerufen wird, wenn ich den Freigabe- und den Verteilungsmodus einbaut, aber nicht im Debug-Modus.XCode Post Build Kopieren von Dateiaktionen

Vielen Dank im Voraus.

-isdi-

Antwort

5

Rechtsklick auf Ihr Ziel und wählen Add-> New Build Phasen-> New Run Script Phase bauen.

Im Inneren der „Script“ Textbereich hinzu:

if [ ${CONFIGURATION} != "Debug" ] 
then 
    /usr/bin/perl "${PROJECT_DIR}/myperlscript.pl" "${PRODUCT_NAME}" "${PROJECT_DIR}" 
fi 

Ändern Sie den Speicherort und den Namen der myperlscript.pl die Position und den Namen des Skripts sein.

Stellen Sie sicher, dass der Schritt Run Script nach Link Binary With Libraries verschoben wird, da Sie die erstellte .app kopieren.

(Vielleicht möchten auch die „perl“ -Tag auf die Frage hinzufügen)

+0

Cool. Danke. Ich habe es nicht mit einer Sprache markiert, weil ich vermute, dass ich den Perl-Teil der Befehlszeile ersetzen kann, um PHP oder Python oder was auch immer zu verwenden. – ISDi

4

Für alle anderen, die fragen, können Sie auch über

eine einfache Kopie tun [Klicken Sie auf Schema Name] -> Bearbeiten Sie Schema ... -> [Wählen Sie Schema] -> Run "Ziel" -> Post-Aktionen

und fügen Sie einen CP-Befehl hinzu. In meinem Fall wollte ich zum schnellen Testen und zur einfachen Verwendung meine Binärdatei zurück in das Projektverzeichnis kopieren, damit ich einige Datendateien verarbeiten konnte. Ich habe folgendes benutzt:

cp ${TARGET_BUILD_DIR}/${TARGET_NAME} ${PROJECT_DIR}/"binaryFileName"