Как обновить инструменты командной строки Xcode?

Я пытаюсь обновить инструменты командной строки на моем Mac OSX.

~  softwareupdate --list
Software Update Tool
Copyright 2002-2015 Apple Inc.

Finding available software
Software Update found the following new or updated software:

   * Command Line Tools (macOS El Capitan version 10.11) for Xcode-8.2
    Command Line Tools (macOS El Capitan version 10.11) for Xcode (8.2), 150374K [recommended]
   * iTunesX-12.5.5
    iTunes (12.5.5), 263476K [recommended]

Но когда я запускаю команду обновления, я получаю эту ошибку:

softwareupdate -i Command Line Tools (macOS El Capitan version 10.11) for Xcode-8.2
zsh: number expected

Это тоже не работает:

softwareupdate -i Command Line Tools
Software Update Tool
Copyright 2002-2015 Apple Inc.

Command: No such update
Line: No such update
Tools: No such update
No updates are available.

Какую строку я должен указать после sofwareupdate -i?

Ответ 1

Запустите softwareupdate -i "Command Line Tools (macOS El Capitan version 10.11) for Xcode-8.2". Важные цитаты.

Ответ 2

Для будущих путешественников, здесь вариант-независимый подход. Сначала запустите softwareupdate --list. Это, вероятно, займет пару минут. Когда это будет сделано, вы увидите маркированный (со звездочкой) вывод, подобный следующему:

$ softwareupdate --list
Software Update Tool

Finding available software
Software Update found the following new or updated software:
   * Command Line Tools (macOS High Sierra version 10.13) for Xcode-10.1
        Command Line Tools (macOS High Sierra version 10.13) for Xcode (10.1), 190584K [recommended]

Найдите маркер, который ссылается на инструменты командной строки Xcode. Скопируйте всю эту строку (кроме звездочки...). В приведенном выше случае вы должны скопировать: Command Line Tools (macOS High Sierra version 10.13) for Xcode-10.1

Затем запустите команду установки (как показано Бренданом Шенксом) с тем, что вы скопировали в кавычки:

softwareupdate -i "Command Line Tools (macOS High Sierra version 10.13) for Xcode-10.1"

Ответ 3

Я собираюсь ответить на несколько другой вопрос здесь, потому что этот вопрос возник, когда я искал решение моей проблемы. Надеюсь, это поможет кому-то (и это, безусловно, поможет мне в следующий раз, когда я столкнусь с той же проблемой).

Я хотел обновить инструменты командной строки с 8 до 9. App Store не предлагал это обновление и не выполнял softwareupdate --list.

xcode-select --install

установлена ​​новая версия инструментов. Но clang --version все еще выдавал 8.0.0 в качестве номера версии. xcode-select -r и перезагрузка не решила эту проблему.

xcode-select -p вернулся /Applications/Xcode.app/Contents/Developer, а clang --version сообщил об установлении каталога установки. Я думал, что начну снова.

sudo rm -rf /Applications/Xcode.app

удаленная версия 8 инструментов. Но xcode-select --install сказал, что инструменты командной строки уже установлены.

sudo xcode-select -r

Теперь sudo xcode-select -p возвращает /Library/Developer/CommandLineTools/.

Похоже, проблема заключалась в том, что новая версия инструментов установлена ​​в другой каталог, а xcode-select -r недостаточно умен, чтобы найти последнюю версию.

Ответ 4

Я выполнил ту же команду с sudo, и это сделало трюк.

sudo softwareupdate -i "Command Line Tools (macOS El Capitan version 10.11) for Xcode-8.2"