使用RVM在Ubuntu上安装Rails路径

use*_*703 24 ubuntu ruby-on-rails rvm

我是运行Ubuntu 10.04并尝试安装rails的linux noob.我首先安装了ruby然后安装了RVM,然后下载并安装了rubygems然后安装了rails.

如果我在命令前面有一个'sudo',Rails似乎只会响应.如果我在终端上写'rails new test',我会得到:

/usr/local/lib/site_ruby/1.8/rubygems.rb:779:in `report_activate_error': Could not find RubyGem rails (>= 0) (Gem::LoadError)
    from /usr/local/lib/site_ruby/1.8/rubygems.rb:214:in `activate'
    from /usr/local/lib/site_ruby/1.8/rubygems.rb:1082:in `gem'
    from /usr/bin/rails:18
Run Code Online (Sandbox Code Playgroud)

如果我去终端并写'rails -v',我会得到同样的结果:

   /usr/local/lib/site_ruby/1.8/rubygems.rb:779:in `report_activate_error': Could not find RubyGem rails (>= 0) (Gem::LoadError)
        from /usr/local/lib/site_ruby/1.8/rubygems.rb:214:in `activate'
        from /usr/local/lib/site_ruby/1.8/rubygems.rb:1082:in `gem'
        from /usr/bin/rails:18
Run Code Online (Sandbox Code Playgroud)

如果我去终端并写'sudo rails -v',我会得到以下内容:Rails 3.0.0.rc

'宝石环境'给了我这个:

RUBYGEMS VERSION: 1.3.7
  - RUBY VERSION: 1.9.2 (2010-07-11 patchlevel -1) [i686-linux]
  - INSTALLATION DIRECTORY: /home/josh/.rvm/gems/ruby-1.9.2-rc2@rails3tutorial
  - RUBY EXECUTABLE: /home/josh/.rvm/rubies/ruby-1.9.2-rc2/bin/ruby
  - EXECUTABLE DIRECTORY: /home/josh/.rvm/gems/ruby-1.9.2-rc2@rails3tutorial/bin
Run Code Online (Sandbox Code Playgroud)

我的怀疑是我的路径设置不正确,但我不确定如何解决它.建议?

sca*_*off 45

即使在安装了"$ rvm notes"记录的rvm和ruby先决条件之后,我也在Ubuntu 10.10的干净安装上遇到了这个问题.

似乎是"rvm"gem安装无法找到系统zlib安装的问题.丹尼尔上面的评论是一个很好的评论 - 可惜它没有被列为答案.

因此,我的解决方案是遵循Daniel指出的说明:https://rvm.beginrescueend.com/packages/zlib/.

$ rvm pkg install zlib
$ rvm remove 1.9.2
$ rvm install 1.9.2
Run Code Online (Sandbox Code Playgroud)

第一个命令将zlib本地安装到您的rvm区域.第二个命令删除ruby 1.9.2,第三个命令用rvm-local zlib重新安装ruby 1.9.2.

然后设置ruby版本并安装gem:

$ rvm使用1.9.2
$ gem install" what "

  • 我不得不使用以下变体:rvm install 1.9.2 --with-zlib-dir = $ rvm_path/usr (2认同)

Rob*_*rco 17

我的猜测是你使用sudo安装了你的宝石(例如sudo gem install rails).当您使用sudo进行安装时,RVM将被忽略并且正在使用系统ruby.

使用RVM时,你真的不想用sudo安装(注意有一个命令rvmsudo,通过sudo运行你的RVM设置,但你真的很少会使用它).从您的环境中可以看出,您的宝石将存储在/home/josh/.rvm/gems/ruby-1.9.2-rc2@rails3tutorial/gems中,您不需要root权限即可安装.

所以尝试:

gem install rails
Run Code Online (Sandbox Code Playgroud)

作为你自己,看看一切是否正常.

  • user424703查看http://rvm.beginrescueend.com/packages/zlib/为我工作:-) (12认同)

Rya*_*yan 7

如果你收到这个警告,"错误:加载命令:更新(LoadError)没有这样的文件加载 - zlib"

基本上,如果在编译ruby时zlib库不存在,你只需要返回并安装库然后重新编译ruby.

所以尝试这些步骤

  1. 卸载ruby

    rvm删除ruby-1.9.2

  2. 安装必要的库

    sudo apt-get install build-essential libssl-dev libreadline5 libreadline5-dev zlib1g zlib1g-dev

  3. 重新安装ruby

    rvm install 1.9.2

  4. 您可能希望将此版本的ruby设置为默认值

    rvm使用1.9.2 - 默认

  5. 为了安全起见,请关闭您当前打开的终端并打开一个新终端.你应该好好离开这里.