Como atualizar o Xcode na linha de comando

326

Estou tentando atualizar o Xcode na linha de comando. Inicialmente, tentei executar:

 xcode-select --install

o que resultou nesta mensagem:

xcode-select: error: command line tools are already installed, use "Software Update" to install updates

Portanto, a questão permanece: existe uma maneira de atualizar o Xcode a partir da linha de comando?

psvj
fonte
@RohitPradhan isso funciona?
Psvj
@psjv ... não tentou ainda,
Rohit Pradhan
Então, obviamente, você pode instalar a partir da loja de aplicativos ... No entanto, tenho um palpite de que o uso de um comando terminal será mais rápido e mais eficiente do que usar a appstore (GUI?). Alguém pode desenvolver essa ideia? Coloquei GUI em parênteses, porque não sei se estou usando a terminologia correta.
precisa saber é o seguinte

Respostas:

409

O que você está realmente usando é o comando para instalar as ferramentas de linha de comando do Xcode - xcode-select --install. Daí a mensagem de erro que você recebeu - as ferramentas já estão instaladas.

O comando que você precisa para atualizar o Xcode é softwareupdate command [args ...]. Você pode usar softwareupdate --listpara ver o que está disponível e, em seguida, softwareupdate --install -ainstalar todas as atualizações ou softwareupdate --install <product name>instalar apenas a atualização do Xcode (se disponível). Você pode obter o nome no comando list.

Como foi mencionado nos comentários, aqui está a página de softwareupdatemanual da ferramenta.

Atualização de 2019

Muitos usuários estão enfrentando problemas nos quais softwareupdate --install -a, na verdade, não são atualizados para a versão mais recente do Xcode . A causa disso é mais do que provável uma atualização pendente do macOS (como @brianlmerritt apontou abaixo). Na maioria dos casos, atualizar o macOS primeiro resolverá o problema e permitirá que o Xcode seja atualizado também.

Atualizando as ferramentas de linha de comando do Xcode

Uma grande parte dos usuários está acessando esta resposta na tentativa de atualizar as ferramentas de linha de comando do Xcode . A maneira mais fácil de conseguir isso é removendo a versão antiga das ferramentas e instalando a nova.

sudo rm -rf /Library/Developer/CommandLineTools
xcode-select --install

Um pop-up aparecerá e o guiará pelo restante do processo.

Vel Genov
fonte
8
Hmm, para mim, por algum motivo, a atualização está listada na App Store, mas não na linha de comando.
Gino Pane
2
--liste --install -a+1
Jacksonkr
2
@GinoPane Same. softwareupdate --list disse que não há atualizações, embora a App Store tenha mostrado uma atualização para o Xcode.
Digital Impermanence
64
Ao testar, softwareupdate --install -anem mesmo atualiza o Xcode, portanto a resposta está totalmente errada.
Charlie Gorichanaz
4
Correu softwareupdate -i -rpara instalar [recommended]apenas a instalação, que era o Command Line Tools. Ele foi baixado duas vezes, instalado uma vez e depois concluído. Vendo que não resolveu o problema, redirecionei softwareupdate --liste a recomendação persistiu. Na AppStore, a Atualização de Software desapareceu e reapareceu. Ao fazer isso pela AppStore, fui solicitado a aceitar os termos do usuário. Depois de aceitar, pareceu funcionar. Correndo repetido softwareupdate --liste mostrou-se como ainda recomendado ...
GMarx
189

Eu tive o mesmo problema e resolvi fazendo o seguinte:

  1. removendo as ferramentas antigas ( $ sudo rm -rf /Library/Developer/CommandLineTools)
  2. instale as ferramentas de linha de comando do xcode novamente ( $ xcode-select --install).

Após essas etapas, você verá um pop para instalar a nova versão das ferramentas.

ipinak
fonte
3
Obrigado cara, esta solução funciona para mim também. Passei um dia inteiro tentando superar isso.
Adebayo
1
@ipinak A remoção de toda a pasta CommandLineTools não é arriscada?
Aryan Venkat
1
@AryanVenkat por que deveria ser arriscado? Você pode reinstalá-los quando quiser.
Ipinak
2
Isso pareceu funcionar para mim: os comandos foram executados sem erros, o pop-up foi concluído e um novo /Library/Developer/CommandLineToolsdiretório foi instalado. No entanto, o novo diretório também estava desatualizado (do Xcode 7.3 em vez do 9.4 atual), portanto, não resolveu o meu problema. Acabei pesquisando ferramentas de desenvolvedor em developer.apple.com/download/more e baixando a Command_Line_Tools_macOS_10.13_for_Xcode_9.4.1partir daí.
jbyler
25
Eu só podia remover / Library / desenvolvedor / CommandLineTools adicionando um sudo por isso tornou-sesudo rm -rf /Library/Developer/CommandLineTools
George
45

Encontrei o mesmo problema ao desinstalar a versão completa do Xcode para reinstalar a versão da CLI. Minha correção foi:

sudo xcode-select -s /Library/Developer/CommandLineTools

Cyril Bouthors
fonte
às vezes a maneira de força bruta é a maneira mais fácil e menos complexa (especialmente no AppleLand) - no entanto, ainda assim, acabou com uma versão mais antiga
encerrada em
Depois de atualizar um dispositivo para Catalina, não consegui instalar os cocoapods até fazer isso. Mas parece ter levado a outros problemas, com o xcodebuild exigindo o xcode, mas o diretório ativo do desenvolvedor '/ Library / Developer / CommandLineTools' é uma instância das ferramentas de linha de comando. Eu tive que correr sudo xcode-select -rpara redefinir o caminho das ferramentas da linha de comando.
Lawrence Weru 11/03
20

Isso salvou meu dia. Basta digitar os comandos

cd  /Library/Developer/CommandLineTools/Packages/;
open macOS_SDK_headers_for_macOS_10.14.pkg

Referência: https://forums.developer.apple.com/thread/104296

Roy Huang
fonte
Não posso dizer que esta é a resposta correta por si só, pois também tentei várias outras soluções fornecidas aqui, mas foi somente depois de usar essa solução que o problema foi resolvido, obrigado!
jupiar
14

Eu recebi esse erro depois de excluir o Xcode. Corrigi-o redefinindo o caminho das ferramentas da linha de comando sudo xcode-select -r.

Antes:

navin@Radiant ~$ /usr/bin/clang
xcrun: error: active developer path ("/Applications/Xcode.app/Contents/Developer") does not exist
Use `sudo xcode-select --switch path/to/Xcode.app` to specify the Xcode that you wish to use for command line developer tools, or use `xcode-select --install` to install the standalone command line developer tools.
See `man xcode-select` for more details.

navin@Radiant ~$ xcode-select --install
xcode-select: error: command line tools are already installed, use "Software Update" to install updates

Depois de:

navin@Radiant ~$ /usr/bin/clang
clang: error: no input files
Navin
fonte
1
Isso consertou para mim. Também apaguei o Xcode e encontrei o erro acima. Embora eu tenha tentado reinstalar apenas as ferramentas de linha de comando usando as sugestões de outras respostas, foi isso que resolveu o problema.
Ryan Marten
11
$ sudo rm -rf /Library/Developer/CommandLineTools
$ xcode-select --install
Minato
fonte
3
Ao adicionar uma resposta a uma pergunta mais antiga com as respostas existentes, é útil apontar qual novo aspecto a sua resposta aborda e também se a passagem do tempo e o lançamento da nova versão afetam a resposta.
22619 Jason Aller
Confirmado que isso funciona no Mac OS Catalina beta. Ele inicia uma janela de instalação para baixar o software necessário após a aprovação do acesso.
Jas
8

A resposta do @Vel Genov está correta, exceto quando a versão do Xcode não pode ser atualizada porque é a versão mais recente da sua versão atual do Mac OS. Se você sabe que existe um Xcode mais recente (por exemplo, ele não carrega um aplicativo em um dispositivo com uma versão recente do iOS), é necessário atualizar primeiro o Mac OS.

Nota adicional para pessoas como eu no antigo Mac Pro 5.1. A atualização para o Mojave exigia a instalação da gpu de metal (Sapphire AMD Radeon RX 560 no meu caso), mas certifique-se de que apenas o monitor HDMI esteja instalado (não apenas 4K! 1080). Somente então o Mojave instalou a atualização de firmware necessária e desligou o computador. Mantenha pressionado o botão liga / desliga por 2 minutos e tudo será atualizado depois disso!

brianlmerritt
fonte
6

Após instalar as ferramentas de linha de comando (com xcode-select --install), digite:

sudo xcode-select --switch /Library/Developer/CommandLineTools/

Agora você deve poder executar o git:

10:29 $ git --version
git version 2.17.2 (Apple Git-113)
Iuri Gavronski
fonte
Isso salvou minha vida - isso funciona em 2019, já que as outras respostas não funcionam mais
Nick
Posso confirmar que isso está funcionando para mim na versão mais recente do Mac Catlina (10.15.4 (19E287))
Gaurav Sarma
5

Eu estava tentando usar o aplicativo React-Native Expo com o create-react-native-app, mas por algum motivo ele iniciaria o meu simulador e ficaria travado sem carregar o aplicativo. A resposta acima por ipinak acima redefiniu as ferramentas da CLI do Xcode porque a tentativa de atualizar para a CLI do Xcode mais recente não estava funcionando. os dois comandos são:

rm -rf /Library/Developer/CommandLineTools
xcode-select --install

Esse processo leva tempo por causa do download. Estou deixando isso aqui para que outras pesquisas sejam feitas para essa correção específica da React-Native Expo.

RawBData
fonte
4

Xcode :: Install é um software CLI simples que permite instalar / selecionar uma versão específica do Xcode.

Você pode instalá-lo usando gem install xcode-install
Então você poderá instalar uma versão específica comxcversion install 9.4.1
E se você tiver mais de uma versão instalada, poderá alternar a versão comxcversion select 9.4

Você pode encontrar mais informações em https://github.com/KrauseFx/xcode-install

obituar
fonte
1

Para aqueles que têm esse problema após a atualização para a Catalina, basta executar este comando no seu terminal

sudo rm -rf /Library/Developer/CommandLineTools; xcode-select --install;
Adeojo Emmanuel IMM
fonte
1
Isso não adiciona nada às outras respostas que já mencionam esses comandos exatos.
bfontaine 5/01
1

Olá, eu resolvi assim:

Instalar Aplicativo> Xcode.app> Conteúdo> Recursos> Pacotes> XcodeSystemResources.pkg.

Abdulkadir Turan
fonte
0

O xCode versão 11.2.1 é necessário para criar o aplicativo no iPad 13.2.3. Quando tento atualizar diretamente do xcode 11.1 para 11.2.1 através da App Store, ele é atingido. Portanto, depois de algumas pesquisas, encontrei uma solução para atualizar removendo o xcode existente do sistema

Então, aqui estou adicionando as etapas para atualizar depois de desinstalar o xcode existente.

  1. Vá para Aplicativos, identifique o Xcode e arraste-o para o lixo.
  2. Esvazie a lixeira para excluir permanentemente o Xcode.
  3. Agora vá para a pasta ~ / Library / Developer / e remova o conteúdo completamente. Use sudo rm -rf ~ / Library / Developer / para evitar qualquer problema de permissão ao excluir
  4. Por fim, remova qualquer diretório de cache associado ao xcode no caminho ~ / Library / Caches / com.apple.dt.Xcode sudo rm -rf ~ / Library / Caches / com.apple.dt.Xcode / *
  5. Após concluir as etapas acima, você pode instalar facilmente o xcode da App Store, que instalará a versão mais recente atual do xcode

Nota: Faça um backup dos seus projetos existentes antes de fazer as alterações acima

Ajith
fonte