Frage

Gibt es eine einfache Möglichkeit, drei20 V1.1 unter Xcode 4 zu arbeiten? Ich folgte den Schritten auf http://hae20.info/article/2011-03-10-xcode4-support Aber das scheint für den Meister zu sein. Ich benutze v1.1, da ich den TTLauncher verwende.

Das Projekt baut gut mit einem normalen Build auf und läuft auf einem iPhone perfekt. Aber wenn ich das Archiv erstellen möchte (für die IPA für die Verteilung), bekomme ich 18 Fehler und 8 Warnungen.

Der erste ist:

../scripts/Protect.command: line 23: cd: /Users/XXX/Library/Developer/Xcode/DerivedData/iDoms-cmyivarwxpbvqdfnyclqdrikrtmw/ArchiveIntermediates/iDoms/BuildProductsPath/Release-iphoneos/../three20/Three20UICommon: No such file or directory

Die meisten anderen sind "keine solche Datei oder Verzeichnis" auf zB:#import "Three20Core/TTGlobalCoreLocale.h"

oder "nicht deklariert (erste Verwendung der Funktion)", die aus der "NO -solchen Datei- oder Verzeichnis -Ausgabe, die ich vermutete" stammt.

In meinen 'Header -Suchpfaden' habe ich:

$(BUILT_PRODUCTS_DIR)/../three20
$(BUILT_PRODUCTS_DIR)/../../three20
../../three20/Build/Products/three20
/usr/include/libxml2

Jede Hilfe wäre sehr geschätzt!

War es hilfreich?

Lösung

Sie sollten sich auschecken Diese Stackoverflow -Frage.

Ich habe die akzeptierte Antwort unten reproduziert:

Es sieht also so aus, als ob der einfachste Weg, alte Xcode 3.2 -Projekte für die Arbeit mit XCode 4 zu erhalten, die folgende zu tun: Folgendes:

Gehen Sie in die Einstellungen von Xcode 4 (CMD+,). Wählen Sie die Registerkarte "Positionen" aus. Wenn es "Gebäudeorte erstellen", wählen Sie die Dropdown -and -Wählen Sie "Place Build -Produkte an Orten", die von Zielen angegeben sind. "

Andere Tipps

Nur um die Antwort von Colin hinzuzufügen: Sie können die abhängige Projekte von Xcode verwenden, um drei20 zu verwenden, obwohl die drei20 -Website nicht "offiziell unterstützt" wird:

  1. Klicken Sie in Ihrem Arbeitsbereich mit der rechten Maustaste auf den leeren Raum in Ihrem Projekt-Navigator. Wählen Sie "Dateien zu" meinem Arbeitsbereich hinzufügen "und wählen Sie das Drei20 -Projekt (Projekt ()three20/src/Three20/Three20.xcodeproj). Dies ist das nur Projekt, das Sie hinzufügen müssen: Es ist nicht erforderlich, die Drei20 -Unterprojekte manuell hinzuzufügen.

  2. Wählen Sie Ihr Projekt im Navigator aus, gehen Sie zu Build -Phasen, öffnen Sie "Link Binary with Bibliotheken", klicken Sie auf "+" in der unteren linken Ecke und fügen Sie die Drei20 -Bibliotheken hinzu: libThree20.a, libThree20Core.a, libThree20Network.a, libThree20Style.a, libThree20UI.a, libThree20UICommon.a und libThree20Navigator.a. Dies führt dazu, dass Xcode beim Bau Ihres Projekts drei20 erstellt.

  3. Hinzufügen ${BUILD_DIR}/three20 Nach Colins Antwort in den Pfad einfügen: Klicken Sie auf "Header -Suchpfade" und fügen Sie hinzu, um Einstellungen zu erstellen, und fügen Sie auf "Header -Suchpfade" und fügen Sie hinzu ${BUILD_DIR}/three20 (Es wird als zeigen build/three20 Wenn Sie den Dialog schließen).

  4. Hinzufügen three20/src/Three20.bundle zu Ihren Ressourcen.

  5. Es ist wahrscheinlich auch eine gute Idee, die Linker -Flags -objc und -all_load hinzuzufügen, wenn Sie dies noch nicht getan haben (gleiches Dialogfeld "Andere Linker -Flags").

Die obigen Schritte sind gut genug, um den Code zu kompilieren. Um "Archiv" zum Laufen zu bringen, müssen Sie:

  1. Hinzufügen $(BUILT_PRODUCTS_DIR)/../three20 und $(BUILT_PRODUCTS_DIR)/../../three20 zur Einstellung der Header -Suchpfade. Wenn Sie dies nicht tun, erhalten Sie Kompilierungsfehler, die die drei20 -Header nicht gefunden werden können.

  2. Zum alle Drei20 Projekte (also nicht nur das Top-Level-Projekt), gehen Sie die Build-Einstellungen und setzen Sie "Installation" auf Ja. Wenn Sie dies nicht tun, wird das Projekt aufbauen, aber Sie können keine IPA erstellen.

Stellen Sie sicher, dass Ihr Produktname (wählen Sie Ihr Ziel aus, wechseln Sie zu Build -Einstellungen und setzen Sie dann "Produktname") keine Leerzeichen, da die Archivierung nicht funktioniert.

Schließlich, wenn Sie Fehler wie z. ld: library not found for -lThree20 und Sie verwenden eine benutzerdefinierte Build -Konfiguration (z. B. ADHOC). Achten Sie auch bei jedem der drei20 -Projekte dieselbe Build -Konfiguration (nur die Freigabekonfiguration duplizieren).

Fügen Sie diese beiden Pfade Ihren Header -Suchpfaden in den Build -Einstellungen für Ihr Ziel hinzu:

"$ (Build_dir)/Drei20" "$ (build_dir) /../ drei20"

Der erste Eintrag ist für reguläre Builds erforderlich und der zweite Eintrag ist für Archive erforderlich.

So einfach ist das.


Zum Erstellen einer Datei in Ihrem Home-Verzeichnis mit einer Liste aller Umgebungsvariablen von Xcode für die Umgebung Ihres Ziels die folgende Auslauf-Skriptphase zu Ihrem Ziel mit Inhalten hinzufügen

Beachten Sie, dass in diesem Fall Ihr Projekt nicht durch die Kompilierungsphase des Build -Prozesses geschafft wird und Ihr Auslaufskript später wird, das Skript wird nicht ausgeführt. Setzen Sie es also an die erste Stelle.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top