如何查明是否安装了 Xcode 命令行工具?

我需要使用 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
:

以及:

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

不太确定这是什么做的,显然是自制的。我不知道为什么它在那里,我不知道我是否可以用它来代替。它不在搜索路径中。

所以我想我需要 Xcode 命令行工具。

Xcode 目前不能从 SoftwareUpdate 服务器获得

我现在的问题。对这个问题的评论是“如果你已经有了这些错误,你就可以得到这个错误”

但是我如何检查我是否已经拥有它们呢?

339091 次浏览

感谢 Freenode 的 # macdev,以下是一些信息:

在 Xcode 出现在应用程序商店之前,它包含命令行工具。

现在你可以从商店获得它,并且有了这个新的机制,它不能在 Xcode.app 之外安装额外的东西,所以你必须自己手动完成,通过:

xcode-select --install

在 Xcode 4.x 上,可以检查它们是否是从 Xcode 内部安装的 用户界面:

enter image description here

在 Xcode 5.x 上,它现在在这里:

enter image description here

我在查找 gcc/gdb 时遇到的问题是,它们已经被 clang/lldb: OS X v10.9(Mavericks)中缺少 GDB所取代

还要注意,Xcode 包含编译器和调试器,因此安装命令行工具要做的事情之一就是进行符号链接或修改 $PATH。它还可以下载某些东西,比如 git。

首先,确保您已经下载了它或没有。打开您的终端应用程序,并输入 $ gcc,如果你没有安装它,你会得到一个警报。您可以通过以下方式验证是否已经安装了它

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

然后输入 $ gcc --version

你可以在这里了解更多关于这个过程的信息: 用于 Mavericks 的 Xcode 命令行工具

/usr/bin/xcodebuild -version

将提供 xcode 版本,通过 Terminal 命令运行它

此命令允许您在仅安装 CommandLineTools版本时检索 Xcode 版本:

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

根据 这个问题的答案是“确定 xcode 命令行工具版本”

备注:

  • 确认在 maxOS Sierra 和 Big Sur 上工作。
  • 当只安装 CommandLineTools 而不安装 Xcode 时,使用 xcodebuild 将返回以下错误:
# /usr/bin/xcodebuild -version
xcode-select: error: tool 'xcodebuild' requires Xcode, but active developer directory '/Library/Developer/CommandLineTools' is a command line tools instance

如果你想知道 Xcode 和 Swift 的安装版本 语言最新版本:

通过使用终端使用以下简单命令:

1. 获取安装 Xcode 版本

 xcodebuild -version

2. 安装 Swift 语言版本

swift --version

如果由于某种原因 xcode 没有安装在

/usr/bin/xcodebuild

执行以下命令

which xcodebuild

如果安装好了,系统会提示你它的位置。

对于 macOS catalina,可以试试这个: open Xcode。如果不存在的话。从 App Store 下载(大约11GB) ,然后打开 Xcode > open developertool > more developertool,用我的苹果 ID 下载一个兼容的命令行工具。然后,在下载之后,我打开 Xcode > Preferences > Locations > Command Line Tool,并从下载中选择新下载的命令行工具。

您可以打开 Xcode 应用程序并进入首选项,最后一行显示您是否安装了工具,哪些工具并允许您从下拉列表中更改它们:

enter image description here

我确实安装了 XCodeCommandlinTools,但是没有安装 XCode 本身。

没有一个可用的答案能让这个版本起作用。pkgutil没有给我 XCodeCommandlinTools 的包,没有建议的包名。

没有安装 XCode (也不需要它) ,我也不能查看这个的设置对话框。

xcode-select --version只给了我 xcode-select本身的版本,没有关于命令行工具版本的线索。

softwareupdate --list告诉我一切都是最新的。

然而,我知道我的版本必须过期,作为一个自制软件包的安装程序告诉我这一点!

我是如何最终发现 XCode Commandline Tools 的安装版本的,我偶然发现了这个命令:

softwareupdate --history

上次更新的版本是12.3。

Display Name                                       Version    Date
------------                                       -------    ----
Safari                                             14.0       04/11/2020, 12:26:12
Command Line Tools for Xcode                       12.1       04/11/2020, 22:38:33
Safari                                             14.0.2     15/12/2020, 16:38:27
Safari                                             14.0.1     15/12/2020, 16:38:27
Command Line Tools for Xcode                       12.3       15/12/2020, 16:38:27
macOS Big Sur                                      11.2.1     14/02/2021, 20:57:56
macOS Big Sur 11.2.2                               11.2.2     08/03/2021, 09:02:20

因此,当您确信已经安装了命令行工具(例如,因为 xcode-select --install告诉您这样做)但其他方法都不能正常工作时,请选中 softwareupdate --history

如果你已经安装了 Xcode 但是还没有设置 Xcode 的版本,那么你将会得到这个错误 Xcode-> 首选项-> Locations-> 命令行 Tools-> Select the Xcode version