怎么处理 brew 和 xcode 对 Command Line Tools 的争夺

2020-06-24 11:21:51 +08:00
 azev

新的 Mac 上安装 xcode 的时候内置安装了 Command Line Tools 。
(路径是 /Applications/Xcode.app/Contents/Developer )

但是后来安装 brew 的时候,要求必须再单独安装个 Command Line Tools 。 (路径是 /Library/Developer/CommandLineTools )

看 brew 的安装过程 会执行 /usr/bin/xcode-select --switch /Library/Developer/CommandLineTools
此时 去 xcode 里看了下 发现 Locations 里的 Command Line Tools 项空了 ( No Xcode Selected )
如果我再在 xcode 里把 Command Line Tools 项重新选择上(只有一个可选就是内置的)
执行 xcode-select -p 显示的就不是 brew 安装设定的那个 /Library/Developer/CommandLineTools 了

那这样会不会又对 brew 造成影响?

1851 次点击
所在节点    问与答
8 条回复
wangkun025
2020-06-24 11:24:39 +08:00
测试,报 Bug,甚至可以自己动手修复 Bug,happy ending.

不想冒险就不用新的 macOS
littleylv
2020-06-24 11:29:13 +08:00
@wangkun025 #1
楼主说的“新的 Mac”指新电脑,没说“新的 macOS”
azev
2020-06-24 14:05:10 +08:00
@littleylv 是的 就是台新的苹果本
Majirefy
2020-06-24 14:14:06 +08:00
@wangkun025 这个 CLT 不一致问题挺烦人的,究其原因是苹果的确维护了两套 CLT,里面提供的内容还不一致……因此就算装了 Xcode,用 xcode-select 苹果还是能“贴心”给你装一份……
brew 由于历史原因一开始选择了用 xcode-select 装 CLT,在论坛和 Github 提过类似的 issue,但到现在没有解决……
lonelymarried
2020-06-24 14:15:04 +08:00
没注意,一直使用,完全不影响
wangkun025
2020-06-24 15:32:25 +08:00
@Majirefy 原来这样。
被这个问题困扰过,没法用 brew cask zap
目前是稳定的。很讨厌 macOS 了。
azev
2020-06-24 16:30:42 +08:00
@Majirefy 是的
在 brew 的 github 上看不少对这个问题的讨论。
brew 的开发人员一直强调单独安装的 CLT 与内置的不一样,不能用 xcode 内置的 CLT

虽然 brew 的官方网站有这么一段
Most formulae require a compiler. A handful require a full Xcode installation. You can install Xcode, the CLT, or both; Homebrew supports all three configurations.
Majirefy
2020-06-27 18:09:37 +08:00
@azev 然而找遍所有的文档,也不知道怎么支持“all three configurations”了。提供的安装脚本虽然可以修改,但是后期使用的时候还是不方便,brew doctor 之类的都会报错。
MacPorts 用起来远不如 brew 方便……

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/684390

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX