如何确定我是否安装了Xcode命令行工具?

P i*_*P i 84 installation xcode command-line

我需要使用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
:
Run Code Online (Sandbox Code Playgroud)

和:

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
Run Code Online (Sandbox Code Playgroud)

不太清楚要做什么,显然它是由自制软件安装的东西.我不知道为什么会这样,我不知道我是否可以使用它.它不在搜索路径中.

所以我认为我需要Xcode命令行工具.

Xcode目前无法从软件更新服务器获得

^我当前的问题确切.对这个问题的评论说:"如果你已经有这个错误就可以得到这个错误"

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

Roh*_*hit 113

/usr/bin/xcodebuild -version
Run Code Online (Sandbox Code Playgroud)

将为您提供xcode版本,通过终端命令运行它

  • 我收到此“xcode-select:错误:工具“xcodebuild”需要 Xcode,但活动开发人员目录“/Library/Developer/CommandLineTools”是命令行工具实例”。我认为 (62认同)
  • @GulamHussain,对于未安装 Xcode 并且仅“CommandLineTools”可用的情况,请参阅 @Alex /sf/answers/2950130781/ 的以下答案 (6认同)
  • 要仅获取版本,请使用以下命令:/usr/bin/xcodebuild -version | sed -En 's/Xcode[[:space:]]+([0-9\.]*)/\1/p' (4认同)
  • 我在使用上述命令时遇到错误。“-bash:/ usr / build / xcodebuild:没有这样的文件或目录。” 我已通过运行命令 gcc --version 确认我拥有 xcode,该命令提供了 gcc 详细信息。我使用的是 Mac OS X 10.13.6。 (2认同)

Sia*_*Alp 36

首先,请确保您已下载或未下载.打开终端应用程序,$ gcc如果尚未安装,请输入以获得警报.您可以验证是否已安装它

$ xcode-select -p
/Library/Developer/CommandLineTools
Run Code Online (Sandbox Code Playgroud)

并确保然后进入 $ gcc --version

您可以在此处阅读有关此过程的更多信息:适用于Mavericks的Xcode命令行工具

  • 嗯,我得到'/Applications/Xcode.app/Contents/Developer' (3认同)
  • @Pi 当你输入 $gcc --version 时你会得到什么?你得到这样的东西: --prefix=/Library/Developer/CommandLineTools/usr --with-gxx-include-dir=/usr/include/c++/4.2.1 Apple LLVM version 5.0 (clang-500.2.79) (基于LLVM 3.3svn) (2认同)

Kir*_*hav 24

如果你想知道Xcode的安装版本以及Swift语言当前版本:

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

1.安装Xcode版本

 xcodebuild -version
Run Code Online (Sandbox Code Playgroud)

2.获取安装Swift语言版本

swift --version
Run Code Online (Sandbox Code Playgroud)


Ale*_*exG 17

我能够使用以下命令在maxOS Sierra上找到我的Xcode版本:

pkgutil --pkg-info=com.apple.pkg.CLTools_Executables | grep version
Run Code Online (Sandbox Code Playgroud)

根据这个答案.

  • 在 Monterey (12.5) 上,我得到以下信息:“在 '/' 处找不到 'com.apple.pkg.CLTools_Executables' 的收据。” 有想法吗?(我只安装了命令行工具,没有安装 Xcode。) (4认同)

P i*_*P i 10

感谢Freenode的#macdev上的人,这里有一些信息:

在Xcode进入应用商店之前的过去,它包括命令行工具.

现在你从商店获得它,并且使用这种新机制它无法在Xcode.app之外安装额外的东西,所以你必须自己手动完成,通过:

xcode-select --install
Run Code Online (Sandbox Code Playgroud)

在Xcode 4.x上,您可以检查它们是否是从Xcode UI中安装的:

在此输入图像描述

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

在此输入图像描述

我找到gcc/gdb的问题是它们已被clang/lldb取代:OS X Mavericks中缺少GDB

另请注意,Xcode包含编译器和调试器,因此安装命令行工具的一个方法是使用符号链接或修改$ PATH.它还下载某些东西,如git.

  • 答案对于 xcode 15 仍然有用且相关 (2认同)

alb*_*oli 6

建议使用的答案xcodebuild -version是正确的,但遗憾的是输出的格式如下:

Xcode 14.3
Build version 14E222b
Run Code Online (Sandbox Code Playgroud)

如果您需要不带“Xcode”前缀的 Xcode 版本,可以运行以下命令:

xcodebuild -version | awk '/Xcode/ {print $2}' | tr -d '\n'
Run Code Online (Sandbox Code Playgroud)


Syl*_*reu 5

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

/usr/bin/xcodebuild

执行以下命令

which xcodebuild

如果已安装,系统会提示您其位置。


kjo*_*jon 5

长话短说

一个人可以安装多个 Xcode 和多个命令行工具。这是系统认为您的 CLT 所在的位置

xcode-select --print-path
Run Code Online (Sandbox Code Playgroud)

选择命令行工具的选项位于 Xcode > 首选项 > 位置,包括每个选项的路径。我发现brew抱怨 Xcode 或命令行工具,因此以下详细说明了如何安装其中任一版本的特定版本。

升级 MacOS 后,brew doctor 出现问题

我一直使用 App store 在我的(2014)Macbook Pro 上安装和更新 Xcode,但今天在所有更新之后brew doctor仍然抱怨 Xcode

警告:您的 Xcode (12.4) 已过时。
请更新到 Xcode 13.2.1(或删除它)。

并抱怨命令行工具

警告:有更新的命令行工具版本可用。

获取Xcode的具体版本

  • xipDeveloper.apple.com下载特定版本的 Xcode (我下载的是 Xcode_13.2.1.xip)

  • 将 Xcode_13.2.1.xip 移至 /Applications

    cd 应用程序
    xip --expand /Applications/Xcode_13.2.1.xip

下载需要一段时间,然后验证应用程序需要一段时间。
打开/Applications/Xcode.app

检查 XCode 中的 CLT

Xcode> Preferences> Locations显示可用的 CLT 以及每个 CLT 的位置(路径)。
选择适当的命令行工具
复制路径。
转到 Terminal 并使用 xcode 中的路径 - 选择
sudo xcode-select -s /Users/<username>/Applications/Xcode.app
Close Terminal 并重新打开。
以下不够具体:
pkgutil --pkg-info=com.apple.pkg.CLTools_Executables | grep version
但这很好地识别版本

$ /usr/bin/xcodebuild -version  
Run Code Online (Sandbox Code Playgroud)

Xcode 13.2.1 内部版本 13C100

如果仍然显示旧版本的 CLT
尝试

sudo xcode-select --switch /Library/Developer/CommandLineTools/
Run Code Online (Sandbox Code Playgroud)

然后尝试

更新到特定版本的 CLT

首先,删除现有的 CLT

sudo rm -rf /Library/Developer/CommandLineTools  
Run Code Online (Sandbox Code Playgroud)

检查哪些 CLT 更新可用

softwareupdate --list  
Run Code Online (Sandbox Code Playgroud)

软件更新工具查找可用软件软件更新发现以下新软件或更新软件:

  • 标签:Xcode-12.4 命令行工具 标题:Xcode 命令行工具,版本:12.4,大小:440392K,>推荐:YES,
  • 标签:Xcode-13.2 命令行工具 标题:Xcode 命令行工具,版本:13.2,大小:577329K,>推荐:YES,
  • 标签:Xcode-12.5命令行工具 标题:Xcode命令行工具,版本:12.5,大小:470966K,>推荐:YES,
  • 标签:Xcode-12.5 命令行工具 标题:Xcode 命令行工具,版本:12.5,大小:470820K,>推荐:YES,
softwareupdate --install "Command Line Tools for Xcode-13.2"
Run Code Online (Sandbox Code Playgroud)

关闭终端并重新打开

/usr/bin/xcodebuild -version     
Run Code Online (Sandbox Code Playgroud)

Xcode 13.2.1
内部版本 13C100

输出来自:

$ xcode-select -p  
Run Code Online (Sandbox Code Playgroud)

/Users/<username>/Applications/Xcode.app/Contents/Developer

brew doctor展示

您的系统已准备好酿造。