M1 MacでこれからGoをインストールする人たちへ
バックエンドを触る機会があったのでGoの環境を構築していたのですが、その際躓いたので記録しておきます。
結論
M1 Mac(Apple Silicon)の場合は、amd64用のパッケージではなくこちらからarm64用のパッケージをダウンロードし、インストールすること。
経緯/詳細
Goのインストールをしようと思い、「Go lang install」と検索し、検索トップに出てきた「Download and install」というGo公式ページからパッケージをダウンロードし、インストールを進めていました。
これが諸悪の根源でした。
このページでダウンロードされるパッケージはamd64用のパッケージがダウンロードされる様です。
インストール時にしっかり確認するべきでした、、
このまま、気づかずにインストールを進めていくとVSCodeなどでGoのプロジェクトを実行した際以下のエラーが表示されます。
エラー文
Failed to launch: could not launch process: can not run under Rosetta, check that the installed build of Go is right for your CPU architecture
CPUアーキテクチャが適していないので実行できないよと言われます。
(arm64アーキテクチャのマシンにamd64用のパッケージをインストールしてしまったので当然、、)
間違ってインストールしてしまったamd64のGoをアンインストールします。
sudo rm -rf /usr/local/go
sudo rm -rf /etc/paths.d/go
sudo rm -fr /Users/ユーザー名/go
こちらのページからApple silicon用のarm64パッケージをダウンロードし、インストールします。
無事にM1 MacでGoプロジェクトが実行できました🎉
ちなみに、Go公式のトップページにあるダウンロードボタンはAll Releaseのページに遷移するので間違えることは無さそうですね!
Discussion