

M1 Mac にて Homebrew でアプリをインストールする際に、明示的に Rosetta 2 (`x86_64`)
を使ってインストールする方法はありますか？

まずはじめに、`arm64` で Homebrew をインストールしました。  
それから Microsoft-Teams を Homebrew でインストールしようとした際に (`brew install --cask
microsoft-teams`)、以下のエラーが返ってきました。

[code]

    ==> Downloading https://statics.teams.cdn.office.net/production-osx/1.4.00.29478
    ######################################################################## 100.0%
    ==> Installing Cask microsoft-teams
    ==> Running installer for microsoft-teams; your password may be necessary. Package installers may write to any location; options such
    as `--appdir` are ignored. installer: This package requires Rosetta 2
    to be installed.
                    Please install Rosetta 2 and then try again.
                        `sudo softwareupdate --install-rosetta`
    
    installer: Error - Microsoft Teamsはこのコンピュータにインストールできません
    
[/code]

そこで、一旦 Rosetta 2 をインストールし (`softwareupdate --install-rosetta`)、再び Teams
のインストールを行ったところ、無事インストールできました。このとき Homebrew 自体は入れ直しておらず、最初のまま `arm64`
上で動作しています。なお、ここで入れた Teams が Rosetta 2 (`x86_64`) 上で動作することは、アクティビティモニタから確認済みです。

以上のことから、Rosetta 2 がインストールされている環境において、Homebrew (on `arm64`) は、 Rosetta 2
を必要とするアプリをインストールする際には、これを自動で判断し、Rosetta 2
を用いてインストールすると考えて良いかと思います。(もし違っていたら、ご解説いただけると幸いです。)  
これを受けて、`arm64` native で動作するアプリでも、明示的に Rosetta 2 (`x86_64`)
上にインストールする方法があるのではと考えました。具体的には、例えば XQuartz を `arm64` ではなく、あえて `x86_64`
でインストールしたいという状況です。Homebrew のオプションとして、インストール方法を明示的に指示できるものはあるでしょうか。  
ご存じの方がいたらご教示ください。

上記を実施した際の私の環境は以下のとおりです。

  * MacBook Pro (14 インチ, 2021) Apple M1 Max
  * macOS Monterey 12.0.1
  * Homebrew 3.3.7

(他に必要な情報がございましたら、ご指摘ください。)


CC BY-SA 4.0
2021-12-09T13:50:38.667
84043
2021-12-09T16:29:32.543
2021-12-09T16:29:32.543
3060
49431
question
macos homebrew
Homebrew でインストールするときに明示的に Rosetta2 を利用したい