我的最终目标是安装Sass。
要做到这一点,我需要安装RubyGems
要做到这一点,我需要安装Ruby。
我使用yum
安装了Ruby。
然后我尝试使用yum yum install rubygem
回应是“无事可做”,但当我写gem install sass
时,我得到了:
gem: command not found
我决定尝试手动安装rubygems 2.2.2。下载后,我尝试运行ruby setup.rb
,作为回应我得到:
Rubygems now requires Ruby 1.8.7 or later
但是yum似乎无法在1.8.5之后安装任何东西。
所以现在我正在尝试手动执行此操作。
我将Ruby 1.9.2下载到我的主目录并按照以下说明操作:http://howboring.com/post/1226760251/centos-5-and-rails-3-and-ruby-1-9-2
这似乎有效,但问题是ruby1.9.2安装在我的主目录中(即~/ruby1.9.3
不是系统范围的。
因此,在我安装的目录中,ruby 1.9.2 ruby -v
仍然提供1.8.5但./ruby -v
返回1.9.2。并且which ruby
会返回/usr/bin/ruby
(我想我可以用指向~/ruby1.9.2/ruby
的符号链接替换它,但这似乎不是“最佳做法”)
所以我的主要问题是应该在哪里安装带有Root权限的ruby 1.9.2,以便将1.8.5替换为1.9.2系统范围。
我的推论是:有没有更简单的方法呢? (也许在没有安装rubygems的情况下安装sass?)
答案 0 :(得分:4)
然后我尝试用yum yum install rubygem安装gem
包名中有拼写错误,实际上名为rubygem s 。
答案 1 :(得分:3)
我能否建议Wayne Seguins出色rvm(ruby版本经理)。正如主页所述:
“RVM是一个命令行工具,可让您轻松安装,管理和使用从解释器到宝石集的多个ruby环境”。
网站具有全面的安装instructions。我在下面发布了一套截断的POSIX系统安装说明,但请参阅项目主页:
“我们花了大量的工时来调试安装过程。请仅使用此站点的安装过程,因为这是唯一受支持的安装类型和方法。”
安装RVM(开发版):
\curl -sSL https://get.rvm.io | bash
关闭当前的shell或终端会话并打开一个新会话(首选)。您可以使用以下命令加载RVM:
user$ source ~/.rvm/scripts/rvm
测试安装是否成功:
user$ type rvm | head -n 1
这应该输出“rvm是一个函数”
列出所有已知的红宝石:
rvm list known //this will output a large list of rubies shortened here
# 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[-p545]
[ruby-]2.0.0-p353
[ruby-]2.0.0[-p451]
[ruby-]2.1[.1]
[ruby-]2.1-head
ruby-head
...
安装所需的版本:
rvm install 1.9.2
您可以设置Ruby的版本以用作新shell的默认值。请注意,这会覆盖'system'ruby:
rvm use 2.1 --default
您还可以暂时使用其他版本的ruby版本
rvm list known //lists system available rubies
选择使用其他红宝石
rvm use 1.9.3
RVM是一个很好的工具,文档齐全,并且积极开发,它处理的功能范围比我在这里列出的范围更广,而且它是我每天使用的工具。
答案 2 :(得分:1)
您可以使用rbenv来安装所需的ruby和rubygems https://gist.github.com/jpfuentes2/2002954