拓冰建站拓冰建站
首页 / 资讯中心 / 正文

在 Linux 上使用 rbenv 安装与管理 Ruby:完整安装指南

在 Linux 上使用 rbenv 安装与管理 Ruby完整安装指南【免费下载链接】curriculumThe open curriculum for learning web development项目地址: https://gitcode.com/GitHub_Trending/cu/curriculum本文档对应 The Odin Project 开源课程本仓库 curriculum中 Ruby 课程的 Linux 安装指南。它将带你以rbenv ruby-build的方式从零开始在 Ubuntu/Xubuntu 等 Debian 系 Linux 发行版上安装 Ruby 3.4.6并学会如何升级 Ruby 版本、在项目间切换 local/global 版本最终为后续 Ruby 与 Ruby on Rails 的学习见 how_this_course_will_work.md搭建一个干净、可长期维护的开发环境。安装前的准备先了解几个关键原则在正式开始敲命令之前课程主课 installing_ruby.md 反复强调了三条经验法则这也是本指南所有步骤的设计前提尽量复制粘贴命令避免手打拼写错误——Ruby 安装过程中 80% 的报错都源于命令输入错误。严格按步骤执行不要跳步——rbenv 的安装顺序先依赖包、再 rbenv、再 ruby-build、最后 Ruby环环相扣。不要随意使用sudo更不要以 root 用户运行——只有当本指南明确要求时才使用sudo例如更新系统包时。终端偶尔会弹出提示让你sudo apt install ...安装某些东西请忽略它继续按本指南执行。这与 安装系统时的建议 中最小化权限的理念一脉相承。为什么用 rbenv 而不是直接用apt install ruby因为 rbenv 是专为安装并管理多个 Ruby 版本而设计的版本管理器它把每个版本的 Ruby 隔离在自己的目录里你可以在一个项目用 Ruby 3.4、另一个项目用 Ruby 3.3互不干扰详见下文local 与 global 版本小节。相比之下通过 apt 安装的系统 Ruby 版本老旧且全局唯一很难满足课程对不同版本的需求。第一步更新系统并安装依赖包安装 Ruby 前需要先确保系统软件包索引是最新的并安装编译 Ruby 所需的构建工具与库。整个安装过程都在终端里完成。在 Ubuntu/Xubuntu 上按CtrlAltT打开终端其他 Ubuntu 衍生版快捷键可能不同请自行尝试。终端小技巧Linux 终端中复制用CtrlShiftC粘贴用CtrlShiftV而非普通的 CtrlC/V。1.1 更新软件包索引与升级系统依次执行下面两条命令由于使用了sudo会提示输入密码输入密码时终端不会显示任何字符反馈这是正常现象输入完毕后按Enter即可sudo apt update sudo apt upgradesudo apt update会从软件源拉取最新的软件包列表见 27_sudo_apt_update.png 的终端输出效果sudo apt upgrade会把系统中已安装的软件包升级到最新版本见 28_sudo_apt_upgrade.png。当终端询问Do you want to continue? [Y/n]时按Y再按Enter。1.2 安装 Ruby 编译所需的依赖包接下来安装一组不会随系统预装的开发库与编译工具。请完整复制下面这一整条命令sudo apt install gcc make libssl-dev libreadline-dev zlib1g-dev libsqlite3-dev libyaml-dev各包的作用对应关系如下这样你就知道少了哪条依赖会出什么问题包名在 Ruby 构建中的作用gcc/make编译工具链ruby-build 需要用它们把 Ruby 的 C 源码编译成可执行文件libssl-devOpenSSL 开发头文件Ruby 标准库openssl依赖它网络加密、HTTPS 相关libreadline-dev让 IRB交互式 Ruby支持命令行编辑与历史记录zlib1g-devzlib 压缩库开发头文件Ruby 的zlib与 gem 打包依赖它libsqlite3-devSQLite3 数据库开发头文件后续学习数据库时需要libyaml-devYAML 解析库psych gem 的底层依赖gem 安装与配置文件解析依赖它同样提示确认时按YEnter部分系统可能还需要再次输入密码。执行sudo apt install的画面可以参考 29_sudo_apt_install_helper_packages.png。补充说明如果你的发行版不是 Debian/Ubuntu 系例如 Fedora、Archapt命令不适用需要改用各自包管理器如dnf/pacman安装等价依赖包。本指南以 Ubuntu/Xubuntu 为准。第二步安装 rbenv 与 ruby-build2.1 克隆 rbenv 仓库rbenv 本身就是一个 git 仓库直接克隆到用户主目录下的~/.rbenvgit clone https://github.com/rbenv/rbenv.git ~/.rbenv2.2 初始化 rbenv运行下面的命令完成 rbenv 的 shell 环境配置它会向~/.bashrc等 shell 配置文件写入必要的环境变量与 shim 路径~/.rbenv/bin/rbenv init关键点执行完这一步后必须关闭当前终端窗口并重新打开一个新终端让rbenv命令所在的路径生效。如果跳过这一步直接验证通常会得到rbenv: command not found。2.3 安装 ruby-build 插件ruby-build是 rbenv 的插件负责把指定版本的 Ruby从 C 源码编译安装这也是为什么第一步需要安装gcc、make等工具。执行以下命令创建插件目录并克隆 ruby-buildmkdir -p $(rbenv root)/plugins git clone https://github.com/rbenv/ruby-build.git $(rbenv root)/plugins/ruby-build其中$(rbenv root)会展开为 rbenv 的根目录默认是~/.rbenv所以等价于把 ruby-build 克隆到~/.rbenv/plugins/ruby-build。2.4 验证 rbenv 是否安装成功rbenv -v正常输出会是一个类似下面的版本号具体小版本可能不同rbenv 1.2.0-14-gc6cc0a1只要输出以rbenv 1...开头即为安装成功。如果完全没有输出版本号说明初始化或 PATH 配置出了问题请检查第 2.2 步是否重新打开了终端或在社区渠道寻求帮助。第三步通过 rbenv 安装 Ruby3.1 安装指定版本建议加--verbose本课程当前使用的 Ruby 版本为3.4.6以本仓库课程为准macOS 安装指南 macos.md 使用的也是同一版本执行rbenv install 3.4.6 --verbose由于 ruby-build 要从源码编译该命令通常需要1015 分钟--verbose参数会实时打印编译日志方便你确认它没有卡死进度停滞时也能看到具体卡在哪一步编译期间无需守在屏幕前。3.2 处理常见错误ruby-build: definition not found如果遇到如下报错ruby-build: definition not found: x.x.x See all available versions with rbenv install --list. If the version you need is missing, try upgrading ruby-build: git -C /home/itorja/.rbenv/plugins/ruby-build pull这说明你本地的 ruby-build 插件版本太旧不认识你要安装的 Ruby 版本。解决办法就是按提示更新 ruby-buildgit -C $(rbenv root)/plugins/ruby-build pull更新后再重新执行rbenv install 3.4.6 --verbose即可。3.3 设置默认globalRuby 版本Ruby 安装完成后还需要明确告诉 rbenv 默认使用哪个版本否则ruby命令不会指向刚安装的版本rbenv global 3.4.63.4 验证当前 Ruby 版本ruby -v输出应形如x代表你安装时的具体修订号ruby 3.4.6pxx (20xx-xx-xx revision xxxxx) [x86_64-linux]看到以ruby 3.4.6开头的输出就说明 Ruby 已经成功安装并处于可用状态。到此安装环节全部完成。深入理解rbenv 如何管理 local 与 global 版本安装只是起点rbenv 的真正价值在于版本管理。课程主课 installing_ruby.md 对此有专门讲解global 版本系统默认使用的 Ruby 版本通过rbenv global查看或设置上文已用到。它决定没有特殊指定的目录里用哪个 Ruby。local 版本某个项目目录专属的 Ruby 版本。设置后rbenv 会在该目录生成一个.ruby-version文件记录版本号进入该目录时自动切换到对应 Ruby。常用命令一览命令作用rbenv local x.y.z为当前项目目录设置 local 版本生成.ruby-version文件rbenv local查看当前目录的 local 版本rbenv global x.y.z设置全局默认版本rbenv global查看当前全局版本rbenv install --list列出 ruby-build 已知的所有可安装版本rbenv versions列出本机已安装的所有 Ruby 版本典型场景项目 A 需要 Ruby 3.4项目 B 需要 Ruby 3.3。你可以rbenv install 3.3.x装上旧版本然后在项目 B 里执行rbenv local 3.3.x之后在两个目录之间来回切换时ruby命令会自动指向对应版本无需手动干预。后续维护如何更新 Ruby随着课程推进或 Ruby 发布新版本你迟早需要升级。利用 rbenv更新过程完全可控按以下步骤操作来源installing_ruby.md进入 rbenv 目录并拉取最新代码cd ~/.rbenv git pull重新初始化 rbenv 环境~/.rbenv/bin/rbenv init进入 ruby-build 插件目录并拉取最新代码ruby-build 是负责编译 Ruby 的插件它需要认识新版本才能安装新版本cd ~/.rbenv/plugins/ruby-build git pull查看所有可供安装的最新版本rbenv install --list-all安装你选择的版本x.y.z遵循语义化版本约定x为主版本、y为次版本、z为补丁版本例如rbenv install 3.4.6安装完成后可再用rbenv global x.y.z把新版本设为默认。安装完成之后验证你的 Ruby 环境Ruby 装好后可以立即验证环境是否完整可用进入 IRB交互式 Ruby在终端输入irb即可进入 REPL 环境输入puts hello回车查看输出输入exit退出。运行 Ruby 脚本文件课程项目中 Ruby 项目练习如 project_caesar_cipher.md要求你编写.rb脚本并通过命令行运行ruby ./your_file_name_in_the_current_directory.rb验证 gem 工具链gem -v应能输出 RubyGems 的版本号这是后续安装各种 gem 包的基础。可选安装 VS Code 的 Ruby LSP 扩展在 VS Code 的扩展面板CtrlShiftX搜索并安装 Ruby LSP即可获得 Ruby 代码的语义高亮与格式化支持。其核心功能开箱即用若它提示 monorepo 配置、缺少 lockfile 或 rubocop 等可以先选择 Dont show again这些概念会在课程后续逐步引入。常见问题速查现象可能原因解决办法rbenv: command not found安装后没有重开终端关闭并重新打开终端或重新执行~/.rbenv/bin/rbenv initruby-build: definition not found: x.x.xruby-build 版本过旧执行git -C $(rbenv root)/plugins/ruby-build pull后重试ruby -v显示的是旧版本忘记设置 global/local 版本执行rbenv global 3.4.6编译 Ruby 时报缺少头文件如 openssl、zlib第一步依赖包未装全回到 1.2 节 补装libssl-dev zlib1g-dev等小结至此你已经在 Linux 上完成了 rbenv 的安装、Ruby 3.4.6 的编译安装与全局版本配置并掌握了 local/global 版本切换与后续升级的方法。这套流程正是课程后续所有 Ruby 练习从 basic_ruby 的基础语法到 object_oriented_programming_basics 的面向对象再到最后的 project_chess的共同运行基础。装好 Ruby就可以正式开始你的 Ruby 学习之旅了。【免费下载链接】curriculumThe open curriculum for learning web development项目地址: https://gitcode.com/GitHub_Trending/cu/curriculum创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
分享:

看完干货,该让你的企业上线了

免费需求沟通 · 48 小时内出具建站方案 · 河南本地可上门