Ermitteln Sie die Version der Xcode-Befehlszeilenprogramme

25

Wie bestimme ich, welche Version (en) von xcode-Befehlszeilentools ich habe?

Ich habe es versucht

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

Entspricht die Apple LLVM-Version der Version der xcode-Befehlszeilentools?

Andrew Grimm
quelle
+1. Es war wirklich schwierig, eine Google-Suche zu erstellen, um eine Antwort darauf zu finden. Ich habe gesucht, xcode command line tools installed versionaber viele irrelevante Übereinstimmungen gefunden. Übrigens, hat die Antwort von Dog G. für Sie funktioniert?
Kelvin

Antworten:

29

Das Ermitteln der CLI-Versionsnummer hängt von der Kombination des jeweiligen Betriebssystems und der jeweils installierten CLI-Tools ab. Eine davon sollte funktionieren:

Auf Yosemite & Mavericks:

pkgutil --pkg-info=com.apple.pkg.CLTools_Executables

auf Mountain Lion:

pkgutil --pkg-info=com.apple.pkg.DeveloperToolsCLI
Doc G.
quelle
5
Wenn sie den pkg-Namen jemals wieder ändern, pkgutil --pkgs | grep -i toolssollte das Ausführen helfen, ihn zu finden.
Kelvin
2

Im Terminal zu tun

$ /Applications/Xcode.app/Contents/Developer/usr/bin/xcodebuild -version

Beispielausgabe:

Xcode 10.1
Build version 10B61

(angepasst von https://www.garron.me/en/bits/what-xcode-version-am-i-running.html ).

EEE
quelle
Mojave hier benutzen. xcodebuild -versionwar das, wonach ich gesucht habe.
Joeytwiddle
1

Ich beantworte gegen die neuere Version (wo die Werkzeuge tatsächlich im Xcode.app PKG sind, aber ich bin mir ziemlich sicher , dass , wenn der Pfad & Ausgabe von zurückgekehrt xcode-select -p, gcc -vund llvm-gcc -v/clang -vsind harmonisch , dann sollten sie das gleiche sein, dh

$ xcode-select -p
/Applications/Xcode.app/Contents/Developer

$ gcc -v
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 6.1.0 (clang-602.0.49) (based on LLVM 3.6.0svn)
Target: x86_64-apple-darwin14.3.0
Thread model: posix

$ llvm-gcc -v
Apple LLVM version 6.1.0 (clang-602.0.49) (based on LLVM 3.6.0svn)
Target: x86_64-apple-darwin14.3.0
Thread model: posix

$ clang -v
Apple LLVM version 6.1.0 (clang-602.0.49) (based on LLVM 3.6.0svn)
Target: x86_64-apple-darwin14.3.0
Thread model: posix

Beachten Sie, dass llvm-gcc ein Link zu clang ist,

$ls -al /usr/bin/llvm-gcc
lrwxr-xr-x  1 root  wheel  5 Oct 19  2014 /usr/bin/llvm-gcc -> clang

Die Ausgabe von llvm-gcc -vund clang -vsollte also identisch sein, auch wenn dies bei Ihnen der Fall sein kann oder nicht ( weitere Informationen finden Sie unter /programming//a/5708732/602581 ).

Peter Hanley
quelle
1
Die Version, die diese Tools ausgeben, stimmt nicht unbedingt mit der Version der Xcode-Befehlszeilen-Tools überein. Beispiel clang --versionkehrt zurück Apple LLVM version 7.3.0 (clang-703.0.31), während der pkgutilBefehl von Doc G. zurückkehrt version: 7.3.1.0.1.1461711523.
Kelvin