How to update Xcode Command Line Tools?

2020-05-25 04:24发布

问题:

I am trying to update Command line tools on my 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]

But when I run the update command, I get this error:

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

This doesn't work either:

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.

What is the exact string I should specify after sofwareupdate -i?

回答1:

For future travelers, here's a version-agnostic approach. First, run softwareupdate --list. This will probably take a couple of minutes. When it's done, you'll see a bulleted (with an asterisk) output like this:

$ 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]

Find the bullet that refers to the Xcode command line tools. Copy that entire line (except the asterisk...). In the above case, you would copy: Command Line Tools (macOS High Sierra version 10.13) for Xcode-10.1

Then, run the install command (as shown by Brendan Shanks) with what you copied inside quotes:

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


回答2:

I'm going to answer a slightly different question here, because this question came up when I searched for a solution to my problem. Hopefully it'll help someone (and it'll surely help me next time I run into the same issue).

I wanted to upgrade the command line tools from version 8 to 9. The App Store didn't suggest this upgrade, and neither did softwareupdate --list.

xcode-select --install

installed the new version of the tools. But clang --version still gave 8.0.0 as the version number. xcode-select -r and rebooting didn't solve this issue.

xcode-select -p returned /Applications/Xcode.app/Contents/Developer, and clang --version reported an installation directory under there. I thought I'd start over again.

sudo rm -rf /Applications/Xcode.app

deleted version 8 of the tools. But xcode-select --install said the command line tools were already installed.

sudo xcode-select -r

Now, sudo xcode-select -p returns /Library/Developer/CommandLineTools/.

It seems that the problem was that the new version of the tools are installed to a different directory, and xcode-select -r is not clever enough to find the latest version.



回答3:

Run softwareupdate -i "Command Line Tools (macOS El Capitan version 10.11) for Xcode-8.2". The quotes are important.



回答4:

I faced similar problem on MacOS Mojave version 10.14.3 with Xcode 10.3 installed. The real problem was, when I installed the Xcode 10.3, I deleted the "Xcode-beta.app" first and then installed the new version. Therefore, when I tried installing CLion for C++ development and configuring it, CMake gave me error And Updating Command Line Tool didnt work for me:

softwareupdate -i "Command Line Tools (macOS Mojave version 10.14.3) for Xcode-10.3"

and showed me this response in terminal

Software Update Tool
Command Line Tools (macOS Mojave version 10.14.3) for Xcode-10.3: No such update
No updates are available.

Then I tried to check the version of Clang using:

clang --version

And the response lead me to the real problem i.e. Active Developer path was still pointing to Old version of Xcode that I had already deleted.

xcrun: error: active developer path ("/Applications/Xcode-beta.app/Contents/Developer") does not exist

Therefore, I switched the active developer path to latest Xcode App installed using:

sudo xcode-select --switch /Applications/Xcode.app

And everything worked like a charm automatically.



回答5:

I ran the same command with sudo and that did the trick.

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



回答6:

when upgrading to MacOS Catalina, Version 10.15.* you can install the command line tools for xcode 11.3 like this:

$ softwareupdate --list
Software Update Tool

Finding available software
Software Update found the following new or updated software:
* Label: Command Line Tools for Xcode-11.3
    Title: Command Line Tools for Xcode, Version: 11.3, Size: 224878K, Recommended: YES,
$ sudo softwareupdate -i "Command Line Tools for Xcode-11.3"