ruby-build

`ruby-build` 是一个用于编译和安装 Ruby 版本的工具,常作为 `rbenv` 的插件使用(也可独立运行),简化了从源码安装不同 Ruby 版本的过程。它支持多种 Ruby 发行版(如 MRI、JRuby、Rubinius 等),并自动处理编译依赖和配置,让安装过程更高效。

### **主要功能**
1. **一键安装特定 Ruby 版本**:无需手动下载源码、配置编译参数,直接通过版本号安装。
2. **支持多类型 Ruby**:包括官方 MRI Ruby、JRuby(基于 JVM)、TruffleRuby 等。
3. **自动处理依赖**:检测并提示缺失的系统库(如 `openssl`、`readline` 等),减少编译失败。
4. **与 rbenv 无缝集成**:安装的 Ruby 版本会自动被 `rbenv` 识别,无需手动配置路径。

### **常用命令**
作为 `rbenv` 插件时,命令通过 `rbenv` 调用:
1. **查看可安装的 Ruby 版本**
“`bash
rbenv install –list # 列出所有可用版本
rbenv install –list | grep 3.3 # 过滤特定大版本(如 3.3.x)
“`

2. **安装指定版本**
“`bash
rbenv install 3.3.0 # 安装 Ruby 3.3.0
rbenv install jruby-9.4.5.0 # 安装 JRuby
“`

3. **卸载已安装的版本**
“`bash
rbenv uninstall 3.2.2 # 卸载指定版本
“`

4. **升级 ruby-build 本身**
若通过包管理器安装,直接更新:
“`bash
# Homebrew(macOS/Linux)
brew upgrade ruby-build

# Git 源码安装(手动更新)
cd ~/.rbenv/plugins/ruby-build
git pull
“`

### **安装方法**
#### 1. 作为 rbenv 插件(推荐)
– **通过 Homebrew(macOS/Linux)**:
安装 `rbenv` 时通常会自动包含 `ruby-build`,若未安装:
“`bash
brew install ruby-build
“`

– **通过 Git 手动安装**:
“`bash
# 克隆到 rbenv 的 plugins 目录
git clone https://github.com/rbenv/ruby-build.git ~/.rbenv/plugins/ruby-build
“`

#### 2. 独立使用(不依赖 rbenv)
“`bash
# 克隆仓库
git clone https://github.com/rbenv/ruby-build.git
cd ruby-build
# 安装到系统(需 sudo)
sudo ./install.sh
“`
独立使用时,安装命令为 `ruby-build <版本号> <安装路径>`,例如:
“`bash
ruby-build 3.3.0 ~/my-ruby-3.3.0
“`

### **常见问题与解决**
1. **编译失败(依赖缺失)**
安装前需确保系统有基础编译工具和库:
– **macOS**:
“`bash
xcode-select –install # 安装 Xcode 命令行工具
brew install openssl readline libyaml # 安装常用依赖
“`
– **Ubuntu/Debian**:
“`bash
sudo apt-get install gcc make libssl-dev libreadline-dev zlib1g-dev
“`

2. **安装速度慢**
可通过配置镜像加速源码下载(以 Ruby 为例):
“`bash
# 临时指定国内镜像(淘宝源)
RUBY_BUILD_MIRROR_URL=https://cache.ruby-china.com/pub/ruby rbenv install 3.3.0
“`

3. **版本列表过时**
升级 `ruby-build` 即可获取最新版本列表(见上文“升级”命令)。

`ruby-build` 是 `rbenv` 生态中不可或缺的工具,它让 Ruby 版本的安装从繁琐的手动编译简化为一条命令,非常适合开发环境中快速切换和管理 Ruby 版本。