Ich möchte, dass gcc $HOME/include
zusätzlich zu den üblichen Include-Verzeichnissen Dateien enthält, aber es scheint kein Analogon zu geben $LD_LIBRARY_PATH
.
Ich weiß, dass ich beim Kompilieren (oder im Makefile) einfach das Include-Verzeichnis in der Befehlszeile hinzufügen kann, aber ich möchte hier wirklich einen universellen Ansatz, wie im Fall der Bibliothek.
linux
gcc
include
environment-variables
Jesse Beder
quelle
quelle
Antworten:
Versuchen Sie die Einstellung
C_INCLUDE_PATH
(für C-Header-Dateien) oderCPLUS_INCLUDE_PATH
(für C ++ - Header-Dateien).Wie Ciro erwähnt,
CPATH
wird der Pfad sowohl für C als auch für C ++ (und jede andere Sprache) festgelegt.Weitere Details in der Dokumentation von GCC .
quelle
Erstellen Sie einen Alias für gcc mit Ihren bevorzugten Includes.
quelle
-I
-l<libnam>
einen Link eingeben würden. Beachten Sie nur, dass das Erstellen eines Alias eine sehr schlechte Lösung ist. Sie würden wirklich eine Liste Ihrer bevorzugten Includes erstellen und diese in Ihr Makefile einfügen.Eine gcc-Spezifikationsdatei kann den Job ausführen, jedoch sind alle Benutzer auf dem Computer betroffen.
Siehe hier
quelle
nur eine Anmerkung:
CPLUS_INCLUDE_PATH
undC_INCLUDE_PATH
sind nicht das Äquivalent vonLD_LIBRARY_PATH
.LD_LIBRARY_PATH
dient demld
(dem dynamischen Linker zur Laufzeit), wohingegen das Äquivalent der beiden vorherigen, die Ihrem C / C ++ - Compiler mit dem Speicherort der Bibliotheken dienen, istLIBRARY_PATH
.quelle