8 Stimmen

Clang und der Standard-Compiler in OS X Lion

In OS X Snow Leopard (10.6) habe ich die folgenden Zeilen in ~/.bashrc um die Kompilierung mit Clang anstelle des Standard-Gcc zu erzwingen:

# Set Clang as the default compiler for the system
export CC=clang
export CFLAGS=-Qunused-arguments
export CPPFLAGS=-Qunused-arguments

Ich musste auch (gelegentlich) die folgenden Zeilen verwenden, um llvm-gcc zu benutzen, wenn clang bestimmte Dinge nicht kompilieren konnte (PostgreSQL war lange Zeit schuld daran):

# Set LLVM GCC as the default compiler for the system
export CPP='llvm-gcc-4.2'
export CC='llvm-gcc-4.2'
export CXX='llvm-g++'

Sind diese Zeilen unter OS X Lion (10.7) noch erforderlich? Ist llvm-gcc (oder clang) der Standard-Compiler für das System? Oder müssen diese Zeilen immer noch in meinem ~/.bashrc ?

7voto

Chris Mowforth Punkte 6571

Der Standardcompiler unter Lion ist jetzt llvm-gcc-4.2, obwohl die Standardauswahl (gcc-4.2, llvm-gcc-4.2, clang) gegenüber Snow Leopard unverändert bleibt. Versuchen Sie zu lesen Verwendung des richtigen Compilers .

5voto

timwoj Punkte 389

Gcc ist unter Lion mit llvm-gcc-4.2 verlinkt.

lrwxr-xr-x  1 root  wheel  12 Jul 21 20:51 /usr/bin/gcc -> llvm-gcc-4.2
lrwxr-xr-x  1 root  wheel  12 Jul 21 20:51 /usr/bin/g++ -> llvm-g++-4.2

Sie können diese Umgebungsvariablen wahrscheinlich ohne großen Schaden entfernen.

3 Stimmen

Für diejenigen, die es nicht wissen, um gcc in /usr/bin zu bekommen, müssen Sie Xcode 4.1 installieren und wenn Sie das aus dem App Store tun, stellen Sie sicher, dass Sie den richtigen Xcode Installer auswählen (Sie könnten die 3.x Version Installer für Snow Leopard haben).

3 Stimmen

Ich habe Xcode 4.3.1 aus dem App Store auf Lion installiert und musste unter Preferences->Downloads->Components die Command Line Tools installieren, um gcc in /usr/bin zu bekommen

0 Stimmen

Lukasz - danke! Ich habe gerade etwa eine Stunde damit verbracht, herauszufinden, wie RVM mir bei einer einfachen Installation so viele Probleme bereiten konnte. Die Kommandozeilen-Tools sind standardmäßig nicht installiert. Fail!

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X