Jak mogę się dowiedzieć, czy mam zainstalowane narzędzia wiersza poleceń Xcode?


99

Muszę użyć gdb.

ps-MacBook-Air:AcoustoExport pi$ gdb
-bash: gdb: command not found

ps-MacBook-Air:AcoustoExport pi$ sudo find / -iname "*gdb*"
Password:
/usr/local/share/gdb
/usr/local/Cellar/isl/0.12.1/share/gdb
:

i:

ps-MacBook-Air:AcoustoExport pi$ ls -la /usr/local/share/gdb
lrwxr-xr-x   1 pi    admin   30 14 Jan 22:01 gdb -> ../Cellar/isl/0.12.1/share/gdb

Nie bardzo wiem, co to zrobić, najwyraźniej jest to coś zainstalowanego przez homebrew. Nie wiem, dlaczego tam jest, nie wiem, czy mógłbym go zamiast tego użyć. Nie ma go na ścieżce wyszukiwania.

Więc myślę, że potrzebuję narzędzi wiersza poleceń Xcode.

Xcode nie jest obecnie dostępny na serwerze aktualizacji oprogramowania

^ dokładnie mój obecny problem. W komentarzu do tego pytania jest napisane „Możesz otrzymać ten błąd, jeśli już je masz”

Ale jak sprawdzić, czy już je mam?

Odpowiedzi:


158
/usr/bin/xcodebuild -version

poda wersję xcode, uruchom ją za pomocą polecenia Terminal


2
Aby pobrać tylko wersję, użyj następującego polecenia: / usr / bin / xcodebuild -version | sed -En 's / Xcode [[: space:]] + ([0-9 \.] *) / \ 1 / p'
Werner Altewischer

1
W przypadku wspomnianego polecenia pojawia się błąd. „-bash: / usr / build / xcodebuild: Nie ma takiego pliku lub katalogu”. Potwierdziłem, że mam xcode, uruchamiając polecenie gcc --version, które podaje szczegóły gcc. Korzystam z Mac OS X 10.13.6.
GAURAV SRIVASTAVA

@GAURAV SRIVASTAVA: to /usr/binnie /usr/build. W rzeczywistości xcodebuildpowinno wystarczyć, ponieważ /usr/binzwykle znajduje się w twoim PATH.
Samuel Lelièvre

38

Przede wszystkim upewnij się, że go pobrałeś, czy nie. Otwórz aplikację terminalu i wprowadź, $ gccjeśli jej nie zainstalowałeś, otrzymasz alert. Możesz sprawdzić, czy został zainstalowany przez

$ xcode-select -p
/Library/Developer/CommandLineTools

I dla pewności wejdź $ gcc --version

Możesz przeczytać więcej o tym procesie tutaj: Narzędzia wiersza poleceń Xcode dla Mavericks


1
@Pi Co otrzymasz, wprowadzając $ gcc --version? Czy otrzymujesz coś takiego: --prefix = / Library / Developer / CommandLineTools / usr --with-gxx-include-dir = / usr / include / c ++ / 4.2.1 Apple LLVM wersja 5.0 (clang-500.2.79) (na podstawie LLVM 3.3svn)
Siavash Alp

Nie, otrzymuję --prefix = / Applications / Xcode.app / Contents / Developer / usr. Pozostała część jest taka sama jak wydruk.
P i

29

jeśli chcesz poznać wersję instalacyjną Xcode, a także aktualną wersję języka Swift:

Użyj poniższego prostego polecenia za pomocą terminala:

1. Aby pobrać wersję Xcode

 xcodebuild -version

2. Aby zainstalować wersję językową Swift

swift --version

24

Udało mi się znaleźć moją wersję Xcode na maxOS Sierra za pomocą tego polecenia:

pkgutil --pkg-info=com.apple.pkg.CLTools_Executables | grep version

zgodnie z tą odpowiedzią .


11

Dzięki ludziom z #macdev Freenode, oto kilka informacji:

W dawnych czasach, zanim Xcode pojawił się w sklepie z aplikacjami, zawierał narzędzia wiersza poleceń.

Teraz pobierasz go ze sklepu, a dzięki temu nowemu mechanizmowi nie można instalować dodatkowych rzeczy poza Xcode.app, więc musisz zrobić to ręcznie, wykonując:

xcode-select --install

W Xcode 4.x możesz sprawdzić, czy są one zainstalowane z poziomu interfejsu użytkownika Xcode:

wprowadź opis obrazu tutaj

W Xcode 5.x jest teraz tutaj:

wprowadź opis obrazu tutaj

Mój problem ze znalezieniem gcc / gdb polega na tym, że zostały one zastąpione przez clang / lldb: brak GDB w systemie OS X 10.9 (Mavericks)

Zauważ również, że Xcode zawiera kompilator i debugger, więc jedną z rzeczy, które zrobi instalacja narzędzi wiersza poleceń, jest dowiązanie symboliczne lub modyfikacja $ PATH. Pobiera również pewne rzeczy, takie jak git.


1

Jeśli z jakiegoś powodu xcode nie jest zainstalowany w

/usr/bin/xcodebuild

wykonaj następujące polecenie

which xcodebuild

a jeśli jest zainstalowany, pojawi się monit o podanie jego lokalizacji.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.