You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用rbenv安装Ruby 3.3.0-dev失败,如何解决?

解决rbenv安装Ruby 3.3.0-dev时BUILD FAILED的问题

问题场景

Debian 10环境下已安装Ruby 2.5.5,执行rbenv install 3.3.0-dev尝试安装Ruby 3.3.0-dev(预期覆盖现有版本),触发BUILD FAILED错误,核心报错为minitest-5.18.0的gem包验证失败,具体日志如下:

$ rbenv install 3.3.0-dev

To follow progress, use 'tail -f /tmp/ruby-build.20230327204531.21780.log' or pass --verbose
Cloning https://github.com/ruby/ruby.git...
Installing ruby-master...

BUILD FAILED (Debian 10 using ruby-build 20230309-1-gf3c1ccc)

Inspect or clean up the working tree at /tmp/ruby-build.20230327204531.21780.nBIyRT
Results logged to /tmp/ruby-build.20230327204531.21780.log

Last 10 log lines:
    from /usr/lib/ruby/2.5.0/rubygems/package.rb:547:in `block (2 levels) in verify'
    from /usr/lib/ruby/2.5.0/rubygems/package/tar_reader.rb:29:in `new'
    from /usr/lib/ruby/2.5.0/rubygems/package.rb:546:in `block in verify'
    from /usr/lib/ruby/2.5.0/rubygems/package/file_source.rb:30:in `open'
    from /usr/lib/ruby/2.5.0/rubygems/package/file_source.rb:30:in `with_read_io'
    from /usr/lib/ruby/2.5.0/rubygems/package.rb:545:in `verify'
    from /usr/lib/ruby/2.5.0/rubygems/package.rb:526:in `spec'
    from /tmp/ruby-build.20230327204531.21780.nBIyRT/ruby-master/tool/lib/bundled_gem.rb:13:in `unpack'
    from -e:1:in `<main>'
make: *** [defs/gmake.mk:333: .bundle/gems/minitest-5.18.0] Error 1

解决方案

1. 清理编译临时目录

删除本次编译残留的临时文件,避免损坏的缓存影响后续安装:

rm -rf /tmp/ruby-build.20230327204531.21780.nBIyRT

或者批量清理所有ruby-build临时文件:

rm -rf /tmp/ruby-build.*

2. 更新ruby-build

当前使用的ruby-build版本(20230309-1-gf3c1ccc)可能存在兼容bug,更新到最新版:

cd "$(rbenv root)"/plugins/ruby-build
git pull

3. 安装编译依赖

确保Debian 10环境具备Ruby编译所需的完整依赖:

sudo apt update
sudo apt install build-essential libssl-dev libreadline-dev zlib1g-dev libyaml-dev libsqlite3-dev sqlite3 libxml2-dev libxslt1-dev libcurl4-openssl-dev software-properties-common libffi-dev

4. 重新尝试安装

添加--verbose参数执行安装,便于后续排查问题:

rbenv install 3.3.0-dev --verbose

5. 临时跳过gem验证(备选方案)

若上述方法无效,可临时跳过gem包验证环节:

export GEM_SKIP_VERIFY=1
rbenv install 3.3.0-dev

错误原因分析

日志显示错误发生在rubygems对minitest gem包的验证步骤,可能的诱因包括:

  • 临时目录中的gem包文件损坏
  • 系统自带的Ruby 2.5.5的rubygems版本过低,不兼容Ruby 3.3.0-dev源码中的gem格式
  • 编译依赖缺失导致gem解压过程异常

内容的提问来源于stack exchange,提问作者ScreamedALot

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 22:27:59