我的计算机上安装了Xcode。最初,我在打开xcode时通过提示安装了xcode命令行工具。在我的Xcode首选项中,在locations部分,命令行工具读取Xcode 12.0 (12A7209)
,并在其下方读取路径/Applications/Xcode.app
。然而,正如所记录的堆栈溢出的NUMEROUS次数一样,Homebrew无法识别我的xcode命令行工具(CLT:N/A(。因此,我从Apple Developer下载了pkg文件,并使用该pkg文件重新安装了命令行工具,因为命令行安装xcode-select --install
不起作用。gui安装程序已完成,没有任何错误。现在,Homebrew识别了我的CLT。
问题:如果Xcode已经安装了命令行工具,那么从Apple开发人员那里下载的pkg文件在什么位置也安装了这些命令行工具?这是否给我的系统留下了两个版本的xcode命令行工具?
正如许多人已经注意到的那样,运行xcode-select -p
会输出以下内容:/Applications/Xcode.app/Contents/Developer
此外which -a xcode-select
也只返回/usr/bin/xcode-select
。
额外的pkg安装在我的计算机上做了什么?
如果我们必须从pkg重新安装Xcode命令行工具才能让命令行程序读取它,那么让Xcode在打开时安装Xcode指令行工具有什么用?
如果Xcode已经安装了命令行工具,那么从苹果开发人员那里下载的pkg文件也在什么位置安装了这些命令行工具?
/Library/Developer/CommandLineTools
这是否给我的系统留下了两个版本的xcode命令行工具?
不完全是"xcode";命令行工具,但是两个CLT,是的。理想情况下,自制程序应该使用xcrun
来找到它们,并使用任何可用的。
正如许多人已经注意到的那样,运行xcode select-p会输出以下内容:/Applications/xcode.app/Contents/Developer
这是正确的,也是意料之中的事。如果您有Xcode,那么应该使用Xcode的CLT。如果你删除Xcode,它应该输出:
/Library/Developer/
您可以通过手动更改此路径
xcode-select -s <path>
额外的pkg安装在我的计算机上做了什么?
它只是放在那里供任何人使用。
如果我们必须从pkg重新安装Xcode命令行工具才能让命令行程序读取它,那么在打开时让Xcode安装Xcode指令行工具有什么用?
不使用现有的Xcode CLT是不好的。