Diese Frage hat sich in den letzten Wochen weiterentwickelt, um allgemeinere Fragen zu behandeln xcode4 (und Upgrades von älteren Projekten xcodes).
Viele der Probleme können jedoch durch Befolgen derselben Anweisungen gelöst werden.
Wenn Sie eines der folgenden Probleme haben, probieren Sie die Methoden in der akzeptierten Antwort aus:
- Xcode 4 kann eine App nicht archivieren
- Xcode 4 erstellt ein unbrauchbares Archiv
- Xcode 4 erstellt keine .ipa
- Xcode 4 kann aufgrund von Präprozessorfehlern nicht kompiliert werden
- Xcode 4 kann keine Header finden
- Der vollständige Code von Xcode 4 funktioniert nicht
- Projektabhängigkeiten werden nicht kompiliert
- Das Hinzufügen einer Abhängigkeit verursacht eines der oben genannten Probleme
Ursprüngliche Frage
Titel: "Lexikon- oder Präprozessor-Problemdatei nicht gefunden" in Xcode 4
Ich habe ein Projekt in Xcode 4, das gut funktioniert und auf dem Gerät und dem Simulator ausgeführt wird, aber beim Versuch, es zu archivieren, treten Fehler auf, wenn nach Header-Dateien gesucht wird, die einer statischen Bibliothek zugeordnet sind:
In file included from /Volumes/Development/Path/LBProject/LBProject/LBProject-Prefix.pch:15:
In file included from /Volumes/Development/Path/LBProject/LBFDefines.h:23:
In file included from /Volumes/Development/Path/LBProject/Classes/LBProjectAppDelegate.h:11:
In file included from /Volumes/Development/Path/LBProject/LBProject/../FKNDirectory/FKNDirectoryManager.h:10:
/Volumes/Development/Path/LBProject/LBProject/../FKNDirectory/FKNDataModel.h:11:9: fatal error: 'Merchant.h' file not found [1]
#import "Merchant.h"
^
1 error generated.
Xcode gibt den Fehler aus
lexical or preprocessor issue file not found
Viel Googeln hat gezeigt, dass viele Menschen dieses Problem haben, aber keine Lösung. Jeder hat eine Lösung oder sogar eine Ahnung.
Update: Die user header
Suchpfade sind ${BUILT_PRODUCTS_DIR}
in allen Konfigurationen eingestellt. Es funktioniert mit jeder Konfiguration, außer bei der Archivierung.
Update 2: Merchant.h
ist eine Core Data-Klasse, die automatisch generiert wird und sich daher im .xcdatamodeld
Paket befindet. Die Header werden jedoch alle beim Erstellen der Bibliothek in das öffentliche Header-Verzeichnis kopiert.