Xcode命令行工具:如何更新?

时间:2017-03-01 17:24:55

标签: xcode macos xcode-command-line-tools

我正在尝试在我的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 ?

之后指定的确切字符串是什么

更新

我也试过添加引号。

softwareupdate -i "Command Line Tools (macOS El Capitan version 10.11) for Xcode-8.2"
Software Update Tool
Copyright 2002-2015 Apple Inc.

Command Line Tools (macOS El Capitan version 10.11) for Xcode-8.2: No such update
No updates are available.

6 个答案:

答案 0 :(得分:9)

我将在这里回答一个稍微不同的问题,因为当我搜索问题的解决方案时出现了这个问题。希望它可以帮助某人(下次我遇到同样的问题时,它肯定会帮助我。)

我想将命令行工具从版本8升级到9.App Store没有建议进行此升级,softwareupdate --list也没有。

xcode-select --install

安装了新版本的工具。但是clang --version仍然给出8.0.0作为版本号。 xcode-select -r并重新启动并没有解决此问题。

xcode-select -p返回/Applications/Xcode.app/Contents/Developerclang --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不够聪明,无法找到最新版本。

答案 1 :(得分:7)

运行softwareupdate -i "Command Line Tools (macOS El Capitan version 10.11) for Xcode-8.2"。报价很重要。

答案 2 :(得分:6)

对于将来的旅行者,这是与版本无关的方法。首先,运行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

然后,使用您在引号内复制的内容运行安装命令(如Brendan Shanks所示):

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

答案 3 :(得分:2)

我用sudo运行了相同的命令,这就是诀窍。

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

答案 4 :(得分:2)

我在安装了 Xcode 10.3 MacOS Mojave版本10.14.3 上遇到了类似的问题。 真正的问题是,当我安装 Xcode 10.3 时,我先删除了“ Xcode-beta.app ”,然后安装了新版本。因此,当我尝试安装CLion进行C ++开发并对其进行配置时, CMake 给了我错误,并且更新命令行工具对我不起作用:

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

并在终端向我展示了此响应

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

然后我尝试使用以下命令检查Clang的版本:

clang --version

然后响应将我引到一个真正的问题,即Active Developer路径仍指向我已删除的Xcode的旧版本。

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

因此,我将活动的开发人员路径切换为使用以下命令安装的最新Xcode App:

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

一切都会自动变幻莫测。

答案 5 :(得分:1)

升级到MacOS Catalina版本10.15。*时,您可以像这样为xcode 11.3安装命令行工具:

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