Frage

Ich bin derzeit versucht, die Verteilung Produkt meines (ersten) iphone app zu bauen, so dass es in dem App Store hochgeladen werden. Ich habe durch alle von der App-ID und Verteilung Provisioning Profilprozess gegangen und bekam schließlich die Konfiguration des Organizer und Ziel bauen, um es zu erkennen.

Das Problem ist, dass, wenn die „Aktiv-Konfiguration“ auf „Distribution“ (Duplikat der „Release“ config. Pro iPhone Dev Center Richtungen) Einstellung ich nicht den Code bekommen zu kompilieren. Das Projekt enthält einen Verweis auf eine statische Bibliothek, die mehrere Klassen enthält, die in vielen der Projekt Klassen als Basisklassen verwendet werden. Also, wenn auf Verteilungskonfiguration Aufbau, der Compiler wirft Fehler zu sagen, dass es nicht die Basisklassen von der statischen Bibliothek finden, und die Erstellung fehl.

Wenn ich das Active Config wechseln. richtig auf „Debug“ (wie auf der Entwicklung verwendet wird) gibt es überhaupt kein Problem, und die App erstellt, wie erwartet.

Ich kann lernen nicht zu finden, was das Problem sein könnte. Ich fand hier die andere ähnliche Frage, aber es scheint ein anderer Fall zu sein:

iPhone statische Bibliothek Verteilung und Fehler Release-Build (aber nicht für debug)

Google scheint auch nicht viele nützliche Ergebnisse zu haben. Ich habe überprüft auch die Informationen des Ziels im Build Abschnitt, und hin und her geschaltet zwischen „Debug“ und „Distribution“ Konfigurationen für jeden relevanten Unterschied zu überprüfen, aber niemand ist bisher gefunden. Eigentlich habe ich keine relevanten Informationen über die statischen lib finden. Nur auf dem Registerkarte Allgemein des Infofensters, sondern die statischen lib richtig in den direkten Abhängigkeiten angezeigt.

Also, an dieser Stelle Ich bin ratlos. Ich habe versucht, die Anweisungen so genau wie möglich zu folgen, aber ich denke, das war nicht genug, und ich habe jetzt Probleme. Ich nehme an, das Update sollte etwas einfach sein (vielleicht nur einige Parameter, irgendwo) aber ich habe nicht in der Lage gewesen, das herauszufinden.

Könnten Sie bitte (BITTE :)) bieten etwas Hilfe zu diesem Thema. Jede Hilfe oder Andeutung, wird sehr geschätzt.

Vielen Dank im Voraus!

War es hilfreich?

Lösung

Überprüfen Sie die Build-Optionen für die Debug-Konfiguration; können beispielsweise Header-Suchpfade für die Debug-Konfiguration als für die Verteilung Konfiguration unterschiedlich sein. Wählen Sie die Menüs Project > Edit Project Settings und Typ: Header Search Paths diese Einstellungen für die aufgeführten Configuration zu überprüfen. Wenn etwas anderes zwischen den Konfigurationen ist, machen sie für beide gleich.

Andere Tipps

Hier ist sie:

Um die Verteilung Build zu machen (pro iPhone Dev Center Richtungen) haben Sie eine Kopie der „Release“ Konfiguration zu machen und nennt es als „Distribution“ und dann das Projekt im Rahmen dieser Active Configuration zu bauen. Überprüfung der „Header-Suchpfade“ im Info-Fenster des Ziels für Debug und Verteilung configs, bemerkte ich einen Unterschied in dem Wert, der als gesetzt wurde (für beide configs):

$ {BUILD_STYLE} - $ {PLATFORM_NAME} / usr / local / include

, so dass in Folge $ {BUILD_STYLE} - $ {PLATFORM_NAME} wird mit "Debug-iphoneos" ersetzt und "Distribution-iphoneos" für jede Konfiguration. Alle Basisklassen aus den statischen lib wurden in den „include“ Ordnern gespeichert, aber es war keine „Distribution-iphoneos“ -Ordner.

Das war, weil ich eine „Distribution“ Konfiguration im statischen lib Projekt nicht hinzugefügt habe, wie ich in der wichtigsten App-Projekt habe (ich nicht wusste, ich musste). Also das Problem zu beheben, habe ich nur die gleiche Konfiguration. im statischen lib Projekt und baute es.

Also zusammenfassend, wenn Sie eine neue Konfiguration in einem Projekt hinzufügen, die Klassen aus einer referenzierten statischen lib verwendet, fügen Sie auch die gleichen config in dem statischen lib Projekt und einen Build ausführen. Auf diese Weise das Hauptprojekt wird in der Lage sein, die Basisklassen zu finden.

Vielleicht ist dies tatsächlich grundlegende Dinge, sorry ich bin nur das Erlernen der Sprache (und XCode):.)

Hope, das hilft, dank Alex wieder.

Viele Grüße

Ich habe mit dem iPhone OS 3.0 SDK von Linker-Fragen gehört; Einige der Abhilfen gehören das Hinzufügen -all_load den Linker-Flags, wenn das Projekt den Bau (obwohl diese unbeabsichtigte Nebenwirkungen haben könnte). Eine weitere Möglichkeit ist das 3.1 SDK zu aktualisieren, wo ich glaube, dass diese Probleme gelöst wurden. Natürlich ist dies nicht Ihr Problem sein könnte ...

Andere Orte für die Hilfe:

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