发现了一个非常Amzaing的Ruby的工具RVM,用于安装和管理Ruby的多个版本。相比较于直接在系统中安装不同版本的Ruby,然后使用时切换到对应的版本,这种方式实在是酷毙了,使ruby安装变得非常单纯,切换不同版本变得非常简单。

安装RVM

RVM提供了一个脚本用于安装RVM。
下载并使用安装脚本安装RVM:

$ \curl -L https://get.rvm.io | bash -s stable

\(backslash)后面加一个命令,类似与command [command],可以消除alias,直接调用对应的命令。
https://get.rvm.io 指向 https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer,RVM的安装脚本。
参数-stable,使安装脚本下载安装RVM的Stable版本。其他可用参数请参考:https://rvm.io/rvm/install

RVM安装成功后,将$HOME/.rvm/bin加到.bashrc中。
重新加载bashrc:

$ source ~/.bashrc

加载rvm的配置文件:

$ source ~/.rvm/scripts/rvm

测试是否安装配置成功:

$ type rvm | head -n 1
rvm is a function

如果输出 rvm is a function 代表安装成功,如果输出 rvm is a hash,重新加载rvm的配置文件。

安装Ruby

RVM安装成功后可以使用RVM来安装每个版本的Ruby了。
查看可以下载安装的版本:

$ rvm list konwn
# MRI Rubies
[ruby-]1.8.6[-p420]
[ruby-]1.8.7[-p374]
[ruby-]1.9.1[-p431]
[ruby-]1.9.2[-p320]
[ruby-]1.9.3[-p448]
[ruby-]2.0.0-p195
[ruby-]2.0.0[-p247]
[ruby-]2.1.0-preview1
[ruby-]2.1.0-head
ruby-head # GoRuby
goruby
...

安装一个版本,例如2.0.0:

$ rvm install 2.0.0

当前使用的rvm,在安装2.0.0过程中,安装rubygems时会报错:There is no checksum for rubygems
更新rvm的版本可以解决这个问题: $ rvm get head

使用刚刚安装的版本:

$ rvm use 2.0.0
Using /home/an/.rvm/gems/ruby-2.0.0-p247

检测ruby版本,确认已经成功安装:

$ ruby -v
ruby 2.0.0p247 (2013-06-27 revision 41674) [i686-linux]
$ which ruby
/home/user/.rvm/rubies/ruby-2.0.0-p247/bin/ruby

OK,如上所以已经成功使用RVM安装2.0.0版本的ruby,而且RVM将安装的ruby全部i放在~/.rvm下面,不会对系统有任何影响而且易于管理,Amazing的工具。

RVM 多版本Ruby管理-Gentoo的更多相关文章

  1. RVM Ruby 管理工具

    1.RVM 简介 1.1 Ruby 简介 Ruby 是一种面向对象的脚本语言,简单易用,功能强大.能跨平台和可移植性好等等.其实就是种脚本语言. Ruby 的软件源使用的是亚马逊的云服务,国内网络环境 ...

  2. 使用rbenv 进行ruby 多版本的管理

    今天需要安装一个ruby 包,但是ruby 版本过低,以前使用过rvm,但是在安装rvm 的时候发现系统有异常 错误信息,发现还有另外一个不错的可选工具 rbenv 安装 我是mac 系统 使用bre ...

  3. 安装Ruby、多版本Ruby共存、Ruby安装慢问题

    rbenv rbenv可以管理多个版本的ruby.可以分为3种范围(或者说不同生效作用域)的版本: local版:本地,针对各项目范围 global版:全局,没有shell和local版时使用glob ...

  4. [转]Spring3 MVC + jQuery easyUI 做的ajax版本用户管理

    原文地址:http://www.iteye.com/topic/1081739 上周写了篇基于spring3.0.5 mvc 简单用户管理实例 ( http://www.iteye.com/topic ...

  5. Ubuntu下多个版本OpenCV管理(Multiple Opencv version)

    背景: 最近,在Nvidia的GPU嵌入式开发板Jetson TX1(简称TX1)上移植深度学习目标检测算法YOLO.在TX1上安装了官方提供的opencv版本——OpenCV4Tegra(OpenC ...

  6. 版本分支管理标准 - Trunk Based Development 主干开发模型

    之前分享过<版本分支管理标准 - Git Flow>,不过在实际使用过程中, 因为其有一定的复杂度,使用起来较为繁琐,所以一些人员较少的团队并不会使用这个方案. 在这基础上,一些新的分支管 ...

  7. Pull Request的过程、基于git做的协同开发、git常见的一些命令、git实现代码的review、git实现版本的管理、gitlab、GitHub上为开源项目贡献代码

    前言: Pull Request的流程 1.fork 首先是找到自己想要pull request的项目, 然后点击fork按钮,此时就会在你的仓库中多出来一个仓库,格式是:自己的账户名/想要pull ...

  8. Mac 多版本 JDK 管理

    Mac 多版本 JDK 管理 1. 准备 ZSH Homebrew Oracle JDK 1.8 安装包(Homebrew 官方源和第三方源不再提供老版本的 Oracle JDK) 2. 安装 JDK ...

  9. 管理不同版本ruby和rails的利器——rvm

    近年来,ruby on rails逐渐火了起来,我想各位码农早就耳闻,特别是那些做B/S项目的童鞋,早就想跃跃一试了. 笔者也是初次接触ruby on rails ,我想,对于初学者来说,最好的学习方 ...

随机推荐

  1. Mysql 关键字及保留字

    Table 10.2 Keywords and Reserved Words in MySQL 5.7 ACCESSIBLE (R) ACCOUNT[a] ACTION ADD (R) AFTER A ...

  2. TFS 2010 迁移/重装/还原 步骤

    1.签入所有代码 2.停止TFS服务:运行命令行,并将路径切换到TFS安装路径:C:\Program Files\Microsoft Team Foundation Server 2010\Tools ...

  3. 用CMake构建Qt5的Visual Studio工程

    使用Visual Studio构建Qt工程的方法有很多种,可以使用Visual Studio自带的功能手动创建配置工程,也可以创建pro文件,然后通过VS的Qt插件导入进行创建.还有一种方式是通过CM ...

  4. 【转载】 C++多继承中重写不同基类中相同原型的虚函数

    本篇随笔为转载,原文地址:C++多继承中重写不同基类中相同原型的虚函数. 在C++多继承体系当中,在派生类中可以重写不同基类中的虚函数.下面就是一个例子: class CBaseA { public: ...

  5. GPL 和BSD和Apache

    开源许可证GPL.BSD.MIT.Mozilla.Apache和LGPL的区别<ignore_js_op> 以下是上述协议的简单介绍:BSD开源协议BSD开源协议是一个给于使用者很大自由的 ...

  6. 安装Eclipse及相关Plugin

    Eclipse: 此处选用基于Eclipse的开发工具:STS 官方网站:https://spring.io/tools/sts Plugins: Open Explorer文件浏览插件it open ...

  7. LoadRunner --HTML/URL录制方式的选择规则

  8. MacOS清除管理员密码

    1.重启 mac ,按住 Command + s 键,进入当用户模式,直达出现黑底白字的屏幕,再松开.输入(重新挂载根文件系统为可读写):mount -uw / 2.然后输入:rm /var/db/. ...

  9. JQuery 刷新关闭页面

    关闭当前页面,刷新之前页面(js): window.opener.location.href = window.opener.location.href; window.close(); 刷新当前页面 ...

  10. NetBios 的结构体详解

    [NetBios 的结构体详解] NetBIOS是早期的局域网传输协议. 1.结构体. 2.命令 NetBIOS命令的使用方式有两种,即等待和非等待(或称为同步与异步)方式. 如果命令码的高阶位是0时 ...