Apple Silicon の Homebrew でエラーがでてインストールできない時に確認すること

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

というふうになるようです。

git log --format=%ct:%s

:publish 2023111701