brew install しようとしたら、「Cannot install under Rosetta 2 in ARM default prefix」と言われてしまった話。
とあるツールをインストールしようとしたときに、Homebrew を使うんですが、Apple Silicon の場合はこちら、みたいな手順の通りにやったのですが、途中でエラーが出てしまいました。
Error: Cannot install under Rosetta 2 in ARM default prefix (/opt/homebrew)!
To rerun under ARM use:
arch -arm64 brew install ...
To install under x86_64, install Homebrew into /usr/local.
Mac のパッケージマネージャの1つである Homebrew ですが、これも、Apple Silicon (M1とかM2とか)用とこれまでの Intel 用の2つがあります。
んで、どうやら、ARM のデフォルトプレフィックスである /opt/homebrew
というのは、 Rosetta 2 を使用している環境だと使えなくて、インストールするには brew
コマンドの前に arch -arm64
をつければ良いらしい。
あるいは、x86_64
でインストールする場合は、 /usr/local
以下に入れろとのこと。
対処法
- Rosetta を使ってターミナルを起動している場合は、外して試してみる
arch -arm64 brew install
で実行する/usr/local
にインストールする
のいずれかの方法でいけるらしいです。
自分の場合はターミナルは Rosetta 使わずに起動してたので、2番目のプレフィックス付きでインストールできました。
/usr/local
にインストールする方法
以下のような感じでインストールすれば良いそうです。
ちなみにこいつは、通常の Homebrew と共存可能らしいです。
arch -x86_64 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
この場合、実行する際は
arch -x86_64 brew install
というふうになるようです。