M3でRuby3.3.0をインストールできない時

M3でRuby3.3.0をインストールできない時 RubyOnRails

みなさんこんにちは!webなみ屋の宮﨑です。
今回は新調したMacBook Airに最新のRubyをいつも通り入れようと思ったら全然インストールできなかったので、その解決方法をご紹介します。

環境

  • Apple M3
  • macOS Sonoma 14.4.1

前提条件

  • インストール対象は Ruby 3.3.0
  • $ rbenv install -list には3.3.0が入っている

解決方法

$ arch -x86_64 zsh
$ rbenv install 3.3.0

解説

原因はApple M1からのMacはarm64アーキテクチャが採用されていたことでした。

Intelのチップを使用していた頃はx86_64が使われていましたが、M1からarm64が使われる様になり、その差分を埋めるためにRosetta2という双方の変換技術が使われています。基本的には意識しなくてもx86_64用の実行ファイルも使える様ですが、Rubyのインストールはx86_64上のターミナルでやらなければいけなかった様です。

Rosetta2については以下をご参照ください
https://support.apple.com/ja-jp/guide/security/secebb113be1/web

手順

  1. arm64→x86_64
    arm64からx86_64に切り替えます
  2. Rubyインストール
  3. x86_arm64 → arm64
    arm64に戻します
$ arch -x86_64 zsh
$ rbenv install 3.3.0
$ exit

※ちなみに、 rails new もarm64ではエラーが出ました。

まとめ

今回はエラー文から色々な対応策が出てきて、PATHが通っていないとかopensslを指定してインストールするとか環境変数を…と本当にわからずでした。シリコンチップはとても快適ですが、今後も個々の差分は頭に入れておこうと思います。

今回こちらを参考にさせていただきました
https://github.com/rbenv/ruby-build/discussions/2335#discussioncomment-8148050
https://codetinkering.com/switch-homebrew-arm-x86
https://blog.mksc.jp/contents/apple-silicon
https://zenn.dev/bon/scraps/1cd6c49320a0ff

コメント

タイトルとURLをコピーしました