rbenv を使用して ubuntu 22.01 に Ruby 2.3.1 をインストールできない
概要
rbenv を使用して ubuntu 22.01 に Ruby 2.3.1 をインストールできないと、次のようなエラー応答が表示されます。
vidur@Vidur-PC:~/rails_apps/Connectivity-Web$ rbenv install 2.3.0
To follow progress, use 'tail -f /tmp/ruby-build.20230425154726.452387.log' or pass --verbose
Downloading openssl-1.0.2u.tar.gz...
-> https://dqw8nmjcqpjn7.cloudfront.net/ecd0c6ffb493dd06707d38b14bb4d8c2288bb7033735606569d8f90f89669d16
Installing openssl-1.0.2u...
Installed openssl-1.0.2u to /home/vidur/.rbenv/versions/2.3.0
Downloading ruby-2.3.0.tar.bz2...
-> https://cache.ruby-lang.org/pub/ruby/2.3/ruby-2.3.0.tar.bz2
Installing ruby-2.3.0...
WARNING: ruby-2.3.0 is past its end of life and is now unsupported.
It no longer receives bug fixes or critical security updates.
BUILD FAILED (Ubuntu 22.10 using ruby-build 20230424)
Inspect or clean up the working tree at /tmp/ruby-build.20230425154726.452387.KXKRoa
Results logged to /tmp/ruby-build.20230425154726.452387.log
Last 10 log lines:
/tmp/ruby-build.20230425154726.452387.KXKRoa/ruby-2.3.0/lib/rdoc/store.rb:749:in `save'
/tmp/ruby-build.20230425154726.452387.KXKRoa/ruby-2.3.0/lib/rdoc/generator/ri.rb:27:in `generate'
/tmp/ruby-build.20230425154726.452387.KXKRoa/ruby-2.3.0/lib/rdoc/rdoc.rb:535:in `block in generate'
/tmp/ruby-build.20230425154726.452387.KXKRoa/ruby-2.3.0/lib/rdoc/rdoc.rb:530:in `chdir'
/tmp/ruby-build.20230425154726.452387.KXKRoa/ruby-2.3.0/lib/rdoc/rdoc.rb:530:in `generate'
/tmp/ruby-build.20230425154726.452387.KXKRoa/ruby-2.3.0/lib/rdoc/rdoc.rb:513:in `document'
./bin/rdoc:20:in `<main>'
make: *** [uncommon.mk:442: rdoc] Error 1
可能な解決策を提案してください、事前に感謝します。
File looks like:
99% [939/945] vm_dump.c
99% [940/945] vm_eval.c
99% [941/945] vm_exec.c
99% [942/945] vm_insnhelper.c
99% [943/945] vm_method.c
99% [944/945] vm_trace.c
100% [945/945] vsnprintf.c
Generating RI format into /tmp/ruby-build.20230425170734.32179.NAWMdR/ruby-2.3.1/.ext/rdoc...
Marshal.dump reentered at marshal_dump
/tmp/ruby-build.20230425170734.32179.NAWMdR/ruby-2.3.1/lib/rdoc/store.rb:866:in `dump'
/tmp/ruby-build.20230425170734.32179.NAWMdR/ruby-2.3.1/lib/rdoc/store.rb:866:in `save_class'
/tmp/ruby-build.20230425170734.32179.NAWMdR/ruby-2.3.1/lib/rdoc/store.rb:750:in `block in save'
/tmp/ruby-build.20230425170734.32179.NAWMdR/ruby-2.3.1/lib/rdoc/store.rb:749:in `each'
/tmp/ruby-build.20230425170734.32179.NAWMdR/ruby-2.3.1/lib/rdoc/store.rb:749:in `save'
/tmp/ruby-build.20230425170734.32179.NAWMdR/ruby-2.3.1/lib/rdoc/generator/ri.rb:27:in `generate'
/tmp/ruby-build.20230425170734.32179.NAWMdR/ruby-2.3.1/lib/rdoc/rdoc.rb:535:in `block in generate'
/tmp/ruby-build.20230425170734.32179.NAWMdR/ruby-2.3.1/lib/rdoc/rdoc.rb:530:in `chdir'
/tmp/ruby-build.20230425170734.32179.NAWMdR/ruby-2.3.1/lib/rdoc/rdoc.rb:530:in `generate'
/tmp/ruby-build.20230425170734.32179.NAWMdR/ruby-2.3.1/lib/rdoc/rdoc.rb:513:in `document'
./bin/rdoc:20:in `<main>'
make: *** [uncommon.mk:442: rdoc] Error 1
解決策
@benj-p がコメントで指摘したように、クラッシュは rdoc で発生します。
rdoc を無効にすると、2.3.1 (および 2.3.2 と 2.3.3) でこの問題が修正されます。
RUBY_CONFIGURE_OPTS=–disable-install-doc rbenv インストール
詳細については、ruby-build リポジトリでこれを紹介および説明するスレッドを参照してください。