結論
以下の記事と同じですので、こちらを見るとすぐに解決します。
環境
- Ubuntu 24.04 LTS
- WSL2
$ rbenv install 3.3.2 実行時のエラー画面とエラーログ
make[2]: ディレクトリ '/tmp/ruby-build.20240530193506.59038.FKjUAA/ruby-3.3.2/ext/date' から出ます linking shared-object ripper.so make[2]: ディレクトリ '/tmp/ruby-build.20240530193506.59038.FKjUAA/ruby-3.3.2/ext/ripper' から出ます make[2]: ディレクトリ '/tmp/ruby-build.20240530193506.59038.FKjUAA/ruby-3.3.2' に入ります tool/file2lastrev.rb:6:in `require': cannot load such file -- optparse (LoadError) from tool/file2lastrev.rb:6:in `<main>' ./tool/file2lastrev.rb:6:in `require': cannot load such file -- optparse (LoadError) from ./tool/file2lastrev.rb:6:in `<main>' make[2]: *** [uncommon.mk:1322: .revision.time] エラー 1 make[2]: ディレクトリ '/tmp/ruby-build.20240530193506.59038.FKjUAA/ruby-3.3.2' から出ます make[1]: *** [exts.mk:99: ruby] エラー 2 make[1]: ディレクトリ '/tmp/ruby-build.20240530193506.59038.FKjUAA/ruby-3.3.2' から出ます make: *** [uncommon.mk:397: build-ext] エラー 2 external command failed with status 2
RUBY_CONFIGURE_OPTS 環境変数にて --with-baseruby を指定したらビルドできた
環境変数 RUBY_CONFIGURE_OPTS="--with-baseruby=$HOME/.rbenv/versions/3.2.4/bin/ruby"
を付与して実行したところ、インストールが正常に終了しました。3.2.4
というのは適当に入れた値です*1。
$ RUBY_CONFIGURE_OPTS="--with-baseruby=$HOME/.rbenv/versions/3.2.4/bin/ruby" rbenv install 3.3.2 ==> Downloading ruby-3.3.2.tar.gz... -> curl -q -fL -o ruby-3.3.2.tar.gz https://cache.ruby-lang.org/pub/ruby/3.3/ruby-3.3.2.tar.gz % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 21.0M 100 21.0M 0 0 67.4M 0 --:--:-- --:--:-- --:--:-- 67.3M ==> Installing ruby-3.3.2... -> ./configure "--prefix=$HOME/.rbenv/versions/3.3.2" --enable-shared --with-ext=openssl,psych,+ "--with-baseruby=$HOME/.rbenv/versions/3.2.4/bin/ruby" -> make -j 20 -> make install ==> Installed ruby-3.3.2 to /home/USERNAME/.rbenv/versions/3.3.2
参考
*1:もちろん、すでに当該バージョンがインストールされている必要があるのと、現状 3.3 系 を指定するとビルドに失敗します