Wir haben zwei Möglichkeiten.
Betrachten Sie Einstellungen -> Standorte -> "Source Trees" in Xcode-Präferenz. Ein hier hinzugefügter Pfad ist ein Pfad auf Systemebene und für alle Projekte verfügbar.
Set HEADER_SEARCH_PATHS
Parameter in Build-Einstellungen auf Projektinfo. Ich habe "${SRCROOT}"
hier ohne Rekursion hinzugefügt. Diese Einstellung funktioniert für die meisten Projekte gut.
Über 2. Option:
Xcode verwendet Clang, die GCC-Set kompatibel Befehl hat. GCC has an option -Idir
, die System Header Suchpfade hinzufügt. Diese Option ist unter HEADER_SEARCH_PATHS
in der Xcode-Projekt-Build-Einstellung verfügbar.
Die zu dieser Einstellung hinzugefügte Pfadzeichenfolge darf jedoch keine Leerzeichen enthalten, da die Option unverändert an den Shell-Befehl übergeben wird.
Aber einige OS X Benutzer (wie ich) können ihre Projekte auf Pfad einschließlich Whitespace setzen, die sollte Escape sein. Sie können es wie /Users/my/work/a\ project\ with\ space
entkommen, wenn Sie es manuell eingeben. Sie können sie auch mit Anführungszeichen ausschließen, um Umgebungsvariablen wie "${SRCROOT}"
zu verwenden.
Oder verwenden Sie einfach .
, um das aktuelle Verzeichnis anzugeben. Ich habe diesen Trick im Quellcode von Webkit gesehen, aber ich bin nicht sicher, ob das aktuelle Verzeichnis beim Erstellen auf das Projektverzeichnis gesetzt wird.
Die ${SRCROOT}
ist vordefinierten Wert von Xcode. Dies bedeutet Quellverzeichnis. Sie können weitere Werte in Reference document finden.
PS. Eigentlich müssen Sie keine Klammern {}
verwenden. Ich bekomme dasselbe Ergebnis mit $SRCROOT
. Wenn Sie den Unterschied kennen, lassen Sie es mich bitte wissen.
Beachten Sie auch, dass $ {SRCROOT} das Verzeichnis ist, das das Verzeichnis .xcodeproj enthält, * nicht * das Verzeichnis, in dem Xcode Ihre Quelldateien ablegt (zumindest auf meinem Xcode 4.6.3). Um zu meiner Quelle zu gelangen, musste ich eine Ebene tiefer gehen. –
Der Unterschied, mit oder ohne Klammern, ist, dass der Pfad mit geschweiften Klammern Leerzeichen enthalten kann. –
LIEBE DICH FÜR DIE BACKSLASH TRICK –