Appleは、IntelとApple Siliconの両方のシステム向けのコードを同梱したmacOSアプリをリリースしたい開発者向けに、拡張されたUniversal 2バイナリ機能を提供しています。つまり、Universal 2バイナリは両方のアーキテクチャ向けの実行コードを含んでいるため、Apple M1とIntelベースのMacの両方でネイティブに動作します。ただし、特定のエッジケースでは、ネイティブApple SiliconアプリをRosettaエミュレーションで実行することが正当化される場合があります。その方法をご紹介します。
ユニバーサルバイナリとロゼッタ2
M1 Macでは、Apple Siliconネイティブアプリは、macOS 11.0 Big Sur以降で利用可能なAppleの優れたRosetta翻訳ツールの助けを借りて翻訳されたアプリよりも効率的に動作します。Apple Silicon搭載コンピュータでMacアプリを初めて起動すると、アプリを開くためにRosettaコンポーネントのインストールを求められる場合があります。その後、Rosettaを必要とするすべてのアプリでRosettaが利用できるようになります。

macOSアプリにIntelバイナリのみが含まれている場合、macOSはApple Siliconシステム上では常にRosettaトランスレータを使用してアプリを実行します。前述の通り、ユニバーサルバイナリは両方のチップアーキテクチャ向けのコードが組み込まれているため、Apple SiliconとIntelベースのMacの両方でネイティブに動作します。
Appleによると:
Rosetta 2は、Intelプロセッサ搭載のMacコンピューター専用に開発されたアプリを使用する際に、バックグラウンドで動作します。アプリはApple Siliconで使用できるように自動的に変換されます。ほとんどの場合、Rosettaを必要とするアプリのパフォーマンスに違いは感じられません。ただし、Apple Siliconのパワーとパフォーマンスをネイティブに最大限に活用できるバージョンについては、アプリ開発者にお問い合わせください。
ユニバーサル アプリをネイティブではなく Rosetta で強制的に実行することは完全に可能です。
なぜそんなことをしたいのですか?
遅くなるのでは?ええ、確かに。では、なぜそうするのでしょうか?いつものことですが、ネイティブApple SiliconアプリをRosettaで実行する理由は人それぞれです。

M1 Macでは動作しない古いプラグインを搭載したブラウザをご利用になる必要があるかもしれません。開発者の方であれば、Rosettaエミュレーションとネイティブコードの実行を比較できることは大変便利です。あるいは、IntelコードをRosettaトランスレータ経由で実行した場合と使用しない場合の速度の違いをご自身で確認したいという方もいらっしゃるかもしれません。
→ Apple Silicon MacをmacOS Recoveryで起動する方法
この先に記載されているチュートリアルに従って、ユニバーサル Mac アプリをネイティブではなく Rosetta エミュレーションで実行するように強制する方法をステップごとに説明します。
ユニバーサル Intel + Apple Silicon アプリをリセットして、ネイティブ Apple Silicon ではなく Rosetta エミュレーションを通じて Intel コードを実行するには、[情報を見る] ウィンドウでボックスにチェックを入れる必要があります。
- Finder で目的の Mac アプリのアイコンをクリックします。
- Finder の「ファイル」メニューをクリックし、「情報を見る」オプションを選択します。
- 「情報を見る」ウィンドウで、「Rosetta を使用して開く」の横にあるチェックボックスをオンにします。
- 「情報を見る」ウィンドウを閉じます。
以上が全てです。
おめでとうございます。これで、Intel と Apple Silicon の両方のコードを含む Mac アプリを、基本的には従来の Intel ベースの Mac コンピューター用に作成された最適化されていないアプリであるかのように実行できるようになりました。
「情報を見る」のトリックは、「種類:」というラベルの情報を表示することで、Rosetta を必要とする、または Rosetta を使用できるユニバーサル Mac アプリを識別するのにも最適な方法です。
- アプリケーション (Intel):これは、アプリが Intel プロセッサのみをサポートし、Apple Silicon を搭載したすべての Mac で動作するために Rosetta が必要であることを意味します。
- アプリケーション (ユニバーサル):これは、Apple Silicon と Intel プロセッサの両方をサポートし、デフォルトで Apple Silicon を使用するアプリを示します。
終了する前に、Apple Silicon コードのない古い Intel 専用アプリを使用している場合は、「Rosetta を使用して開く」オプションが表示されないか、グレー表示されます。