.png)
cc ist der POSIX-Name des C-Compilers. Gibt es einen allgemeinen Namen für den C++-Compiler (und Linker). Beachten Sie, dass dadurch g++
auch einige Bibliotheken hinzugefügt werden, die bei Verwendung von einfachem gcc oder ld nicht eingeschlossen werden.
Antwort1
Das POSIX C-Compiler-Frontend istJetztc99
; cc
ist weithin verfügbar, aber nicht garantiert. POSIX spezifiziert nichts C++-bezogenes, daher finden Sie dort keinen standardisierten Befehl zum Aufrufen eines C++-Compilers und -Linkers.
Gängige Praxis (siehe z. B.GNU Make) besteht darin, sich auf die Variablen CC
und zu verlassen CXX
. Im Fall von GNU sind die Standardwerte für diese cc
bzw g++
.; BSDs neigen dazu, cc
und zu verwenden c++
(siehe zum BeispielOpenBSD-Konfiguration). Der Zugriff auf den Linker erfolgt über den Compilertreiber und wird nicht explizit aufgerufen.
Antwort2
Was Linux betrifft, verwenden die meisten Makefiles, die ich in den letzten zwei Jahrzehnten gesehen habe, nichts anderes als gcc
/ g++
. Wenn sich jemand die Mühe macht, einen echten Linker und nicht GCC zu verwenden, gibt er normalerweise an ld
. Ich habe das vielleicht einmal gesehen cc
.
Die meisten Linux-Distributionen stellen einen symbolischen Link von cc
zu bereit gcc
, dies ist jedoch nicht der Fall, wenn Sie GCC entfernen und stattdessen clang installieren.
Keine Ahnung, ob es portierbar ist, da beispielsweise FreeBSD kürzlich auf Clang/LVM migriert ist, andere BSDs weiterhin GCC verwenden und Mac OS ebenfalls Clang verwendet. Android hat seine eigene Toolchain.
Ich habe keine anderen Unix-Versionen verwendet, daher keine Kommentare.
Was ist Ihr Anwendungsfall? Bitte bearbeiten Sie Ihre Frage und geben Sie weitere Details an.