将 Mac 从 Intel 型号升级到 M3 (ARM) 型号,迁移文件和设置。 ARM Mac 运行的是 Sequoia (15.1.1) 正如往常一样,迁移的 Homebrew 软件包和 brew 本身立即被破坏,因为具有 Intel 可执行文件而不是 ARM 可执行文件。
我已经通过官方的curl/execute方法从头开始重新安装了Homebrew。所以
brew
现在是 ARM 二进制文件。然而,任何命令(甚至brew config
)都会尝试将 ruby 升级到 3.3.6 - 并且在执行此操作时,会以某种方式获取 Intel 版本。消息如下:
seva@Mac ~ % brew config
=> Downloading https://ghcr.io/v2/homebrew/portable-ruby/portable-ruby/blobs/sha256:720d4fb1164e600f787d656019a8e46314dc38e1885f4a8df809c180acf5e7b3
.Already downloaded: /Users/seva/Library/Caches/Homebrew/portable-ruby-3.3.6.el_capitan.bottle.tar.gz
==> Pouring portable-ruby-3.3.6.el_capitan.bottle.tar.gz
/usr/local/Homebrew/Library/Homebrew/cmd/vendor-install.sh: line 259: ./3.3.6/bin/ruby: Bad CPU type in executable
Error: Failed to install ruby 3.3.6!
Error: Failed to upgrade Homebrew Portable Ruby!
Brew 更新/升级/安装/卸载任何内容都会出现相同的错误。
我查看了portable-ruby-3.3.6.el_capitan.bottle.tar.gz - 它包含Intel版本的
ruby
。令人沮丧的是,在 Caches 下的同一文件夹中,有 portable-ruby-3.3.6.arm64_big_sur.bottle.tar.gz
- 其中包含 ARM 版本。尝试直接安装 - 同样的错误。尝试重命名它以匹配 El Capitan 存档 - 出现校验和不匹配错误。
为什么
brew
选择 Intel 版本的 ruby 作为最新版本?
Rosetta 2 没有安装,我宁愿不去那里。
我也有同样的问题
==>下载https://ghcr.io/v2/homebrew/portable-ruby/portable-ruby/blobs/sha256:720d4fb1164e600f787d656019a8e46314dc38e1885f4a8df809c180acf5e7b3 #################################################### ################################################ 100.0% ==>浇注portable-ruby-3.3.6.el_capitan.bottle.tar.gz /usr/local/Homebrew/Library/Homebrew/cmd/vendor-install.sh:第 227 行:11111 已杀死:9“./${VENDOR_VERSION}/bin/${VENDOR_NAME}”--version > /dev/null 错误:安装 ruby 3.3.6 失败! 错误:无法安装 Homebrew Portable Ruby(并且您的系统版本太旧)!