最近、macOS 12.6 on arm64 環境で rbenv を使用して Ruby 2.6.6 をインストールしようとしたところ、以下のようなエラーに遭遇しました。
BUILD FAILED (macOS 12.6 on arm64 using ruby-build 20240612-2-g08aadf4)
このエラーは、特定の環境設定が必要であることを示しています。そこで、解決策として次のコマンドを使用しました。
RUBY_CFLAGS=-DUSE_FFI_CLOSURE_ALLOC arch -arm64 rbenv install 2.6.6
これにより、Ruby 2.6.6 を正常にインストールすることができました。
解決方法の詳細
このエラーは、ARMアーキテクチャ上でのRubyのビルド時に必要な特定のCFLAGS設定が不足していたことが原因でした。RUBY_CFLAGS=-DUSE_FFI_CLOSURE_ALLOC arch -arm64 を使用することで、ARM64環境向けに適切なビルドオプションが適用され、ビルドが成功しました。
手順
- rbenvのインストール: rbenvをインストールし、パスを設定します。
# rbenvのインストール
git clone https://github.com/rbenv/rbenv.git ~/.rbenv
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(rbenv init -)"' >> ~/.zshrc
source ~/.zshrc
- Ruby 2.6.6のインストール: RUBY_CFLAGSとarch -arm64を指定して、Ruby 2.6.6をインストールします。
RUBY_CFLAGS=-DUSE_FFI_CLOSURE_ALLOC arch -arm64 rbenv install 2.6.6
- 確認: インストールが完了したら、正常にRubyが動作するか確認します。
ruby -v
これにより、macOS 12.6 on arm64 環境でのRuby 2.6.6のインストール手順と問題解決法を紹介しました。rbenvを使用してRubyを管理する際に同様のエラーに遭遇した場合、この方法を参考にしてください。