Como posso saber se tenho ferramentas de linha de comando Xcode instaladas?


97

Eu preciso usar o 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
:

e:

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

Não tenho certeza do que fazer isso, claramente é algo instalado por homebrew. Não sei por que está ali, não sei se poderia usá-lo em seu lugar. Não está no caminho de pesquisa.

Então eu acho que preciso de ferramentas de linha de comando do Xcode.

O Xcode não está disponível no servidor de atualização de software

^ exatamente meu problema atual. O comentário sobre essa pergunta diz "você pode obter este erro se já os tiver"

Mas como verifico se já os tenho?

Respostas:


155
/usr/bin/xcodebuild -version

fornecerá a versão do xcode, execute-o através do comando Terminal


2
Para obter apenas a versão, use o seguinte comando: / usr / bin / xcodebuild -version | sed -En 's / Xcode [[: space:]] + ([0-9 \.] *) / \ 1 / p'
Werner Altewischer

1
Estou recebendo um erro com o comando mencionado. "-bash: / usr / build / xcodebuild: Não existe esse arquivo ou diretório." Confirmei que tenho o xcode executando o comando gcc --version, que fornece os detalhes do gcc. Estou no Mac OS X 10.13.6.
GAURAV SRIVASTAVA

@GAURAV SRIVASTAVA: é /usr/bin, não /usr/build. Na verdade xcodebuilddeve ser o suficiente, pois/usr/bin geralmente está em seu PATH.
Samuel Lelièvre

38

Em primeiro lugar, certifique-se de que o baixou ou não. Abra seu aplicativo de terminal e entre, $ gccse não o instalou, você receberá um alerta. Você pode verificar se o instalou por

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

E para ter certeza, entre $ gcc --version

Você pode ler mais sobre o processo aqui: Ferramentas de linha de comando Xcode para Mavericks


1
@Pi O que você obtém quando insere $ gcc --version? Você consegue algo assim: --prefix = / Library / Developer / CommandLineTools / usr --with-gxx-include-dir = / usr / include / c ++ / 4.2.1 Apple LLVM versão 5.0 (clang-500.2.79) (baseado em LLVM 3.3svn)
Siavash Alp

Não, recebo --prefix = / Applications / Xcode.app / Contents / Developer / usr. O restante é igual à sua impressão.
P i

29

se você quiser saber a versão de instalação do Xcode, bem como a versão atual do idioma Swift:

Use o comando simples abaixo usando o Terminal:

1. Para instalar a versão do Xcode

 xcodebuild -version

2. Para instalar a versão do idioma Swift

swift --version

23

Consegui encontrar minha versão do Xcode no maxOS Sierra usando este comando:

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

de acordo com esta resposta .


11

Graças ao pessoal do #macdev da Freenode, aqui estão algumas informações:

Antigamente, antes que o Xcode estivesse na app-store, ele incluía ferramentas de linha de comando.

Agora você pode obtê-lo na loja e, com esse novo mecanismo, ele não pode instalar coisas extras fora do Xcode.app, então você tem que fazer isso manualmente:

xcode-select --install

No Xcode 4.x, você pode verificar se eles estão instalados a partir da IU do Xcode:

insira a descrição da imagem aqui

No Xcode 5.x, agora está aqui:

insira a descrição da imagem aqui

Meu problema para encontrar gcc / gdb é que eles foram substituídos por clang / lldb: GDB ausente no OS X v10.9 (Mavericks)

Observe também que o Xcode contém compilador e depurador, então uma das coisas que a instalação de ferramentas de linha de comando fará é criar um link simbólico ou modificar $ PATH. Ele também baixa certas coisas como git.


1

Se por algum motivo o xcode não estiver instalado em

/usr/bin/xcodebuild

execute o seguinte comando

which xcodebuild

e se estiver instalado, você será solicitado a informar sua localização.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.