qual è la differenza tra la versione gcc e la versione gcc di Xcode?


4

Questa forse è una domanda stupida, ma sono molto confuso

eseguo pkgutil in shell

$ pkgutil --pkg-info=com.apple.pkg.CLTools_Executables
package-id: com.apple.pkg.CLTools_Executables
version: 6.1.1.0.1.1416017670

quanto sopra mi dice versione 6.1

e la versione di gcc nella shell dice

$ gcc --version
Configured with: --prefix=/Library/Developer/CommandLineTools/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 6.0 (clang-600.0.56) (based on LLVM 3.5svn)
Target: x86_64-apple-darwin13.1.0
Thread model: posix

Questo dice LLVM versione 6.0, Qualcuno può spiegare che cosa stanno dicendo le versioni precedenti quale versione di cosa !!


2
Utilizzo di gcc not llvm-gcc con Mac OS X Lion : "A partire da Xcode 4.2 in Lion, Apple non spedisce più la sua versione precedente di gcc-4.2, che era in Xcode 4.1 e versioni precedenti e ora spedisce solo llvm-gcc (front-end gcc con back-end di codice llvm) e clang ( clang front-end con llvm backend). "

Sono su OSx Mavericks.
— Ciasto piekarz

la cosa è, gcc non è gcc su un mac e non è stato per un tempo molto lungo. A meno che non si adottino misure speciali per fare diversamente, invocare gcc su un mac è in realtà clang / llvm in esecuzione in una modalità compatibile con le opzioni di gcc.

duh, quindi Apple l'ha fatto per supportare le API che sono specificamente pensate per lo sviluppo di OSx?
— Ciasto piekarz

1
clang è inteso per l'utilizzo di toolchain (che lo rende ideale per l'uso in xcode). (Vedere C'è un modo per usare gcc come libreria? ) Apple ha deciso di dedicare solo sforzi per supportare un compilatore open source e un compilatore open source che è banalmente compatibile con l'integrazione sui loro sistemi (piuttosto che con la GPL v3 di gcc). Guarda anche Perché FreeBSD deprecating GCC in favore di Clang / LLVM? sebbene si noti che alcuni anni non sono aggiornati (llvm è arrivato in un certo senso da allora).
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.