Ubuntu 22.01下使用rbenv安装Ruby 2.3.1失败求助
解决Ubuntu 22.10下rbenv安装Ruby 2.3.x时RI文档生成失败的问题
问题原因
Ruby 2.3.0/2.3.1是*已停止维护(EOL)*的版本,其自带的rdoc/ri工具与Ubuntu 22.10的系统环境存在兼容性冲突,在生成RI格式文档时会触发Marshal.dump reentered at marshal_dump错误,导致构建失败。
可行解决方案
方案1:跳过文档生成(推荐)
直接在安装命令中添加参数,跳过rdoc和ri文档的安装步骤,这是最快速有效的解决方式:
安装Ruby 2.3.0:
RUBY_CONFIGURE_OPTS="--disable-install-doc" rbenv install 2.3.0
安装Ruby 2.3.1:
RUBY_CONFIGURE_OPTS="--disable-install-doc" rbenv install 2.3.1
若仅需禁用RI文档,可使用:
RUBY_CONFIGURE_OPTS="--disable-install-rdoc" rbenv install 2.3.x
方案2:手动替换rdoc版本(可选,仅当需要本地文档时)
如果确实需要Ruby的本地文档,可按以下步骤操作:
- 先跳过文档安装Ruby:
RUBY_CONFIGURE_OPTS="--disable-install-doc" rbenv install 2.3.1
- 切换至该Ruby版本:
rbenv local 2.3.1
- 安装适配Ruby 2.3.x的rdoc版本(如4.2.0):
gem install rdoc -v 4.2.0
- 手动生成文档:
rdoc --all
内容的提问来源于stack exchange,提问作者vidur punj
相关产品推荐
相关产品推荐

