rails控制台,RVM和readline的问题

Max*_*ams 52 ruby readline rvm

我已经安装了rvm,以确保我的本地开发版本的ruby与我的服务器相同,我正在使用的特定应用程序(ruby 1.8.7).我已经完成了这个,并安装了ruby 1.8.7确定.但是,当我尝试启动rails控制台时,我收到此错误:

Readline was unable to be required, if you need completion or history install readline then reinstall the ruby.
You may follow 'rvm notes' for dependencies and/or read the docs page http://rvm.beginrescueend.com/packages/readline/ . Be sure you 'rvm remove X ; rvm install X' to re-compile your ruby with readline support after obtaining the readline libraries.
Couldn't load Wirble: no such file to load -- wirble
Run Code Online (Sandbox Code Playgroud)

我已经阅读了错误引用的页面上的注释(http://rvm.beginrescueend.com/packages/readline/),并按照说明进行操作,其中涉及基本安装readline,卸载ruby 1.8.7,然后安装ruby 1.8.7再次获得readline支持.(实际上该页面使用ruby 1.9.2作为示例,但我假设它也应该与1.8.7一起工作.也许情况并非如此).

但是,我仍然得到同样的错误.有没有其他人经历过这个并想出来了?
感谢任何建议 - 最多

编辑 - 我正在使用Ubuntu 9.10顺便说一下相关的情况.

编辑 - 这是我的输出rvm info,如下所示:

$ rvm info

system:

  system:
    uname:       "Linux max-laptop 2.6.31-22-generic #68-Ubuntu SMP Tue Oct 26 16:38:35 UTC 2010 i686 GNU/Linux"
    bash:        "/bin/bash => GNU bash, version 4.0.33(1)-release (i486-pc-linux-gnu)"
    zsh:         " => not installed"

  rvm:
    version:      "rvm 1.1.6 by Wayne E. Seguin (wayneeseguin@gmail.com) [http://rvm.beginrescueend.com/]"

  homes:
    gem:          "not set"
    ruby:         "not set"

  binaries:
    ruby:         "/usr/bin/ruby"
    irb:          "/usr/bin/irb"
    gem:          "/usr/bin/gem"
    rake:         "/usr/bin/rake"

  environment:
    PATH:         "/home/max/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/var/lib/gems/1.8/bin:/home/max/software/svnmerge:/home/max/.gem/ruby/1.8/bin:/home/max/work/e_learning_resource/trunk/public/assets/dvd_files/bin:/opt/firefox:/home/max/.rvm/bin:/home/max/.rvm/bin"
    GEM_HOME:     ""
    GEM_PATH:     ""
    MY_RUBY_HOME: ""
    IRBRC:        ""
    RUBYOPT:      ""
    gemset:       ""
Run Code Online (Sandbox Code Playgroud)

Geo*_*tte 67

我在Ubuntu 10.04上遇到了与1.9.2类似的问题,但症状是相同的.为了让它工作:

rvm pkg install readline
Run Code Online (Sandbox Code Playgroud)

或者在RVM版本1.6.32之前,您需要以下命令

rvm package install readline
Run Code Online (Sandbox Code Playgroud)

然后:

apt-get install ncurses-dev
Run Code Online (Sandbox Code Playgroud)

然后从他们的说明中获取http://rvm.beginrescueend.com/packages/readline/

cd $HOME/.rvm/src/ruby-1.9.2-p0/ext/readline
ruby extconf.rb -- --with-readline-dir="$HOME/.rvm/usr"
make install
Run Code Online (Sandbox Code Playgroud)

我实际上已经在服务器上安装了系统rvm,所以我需要这样做:

cd $HOME/.rvm/src/ruby-1.9.2-p0/ext/readline
ruby extconf.rb -- --with-readline-dir="/usr/local/rvm/usr"
make install
Run Code Online (Sandbox Code Playgroud)

之后,我可以完全访问控制台.

  • 对我来说,我不得不使用pkg,而不是包装.使用rvm pkg install readline (2认同)

Say*_*yuj 10

运行命令

rvm requirements
Run Code Online (Sandbox Code Playgroud)

它显示了要求和依赖关系.安装它们并在rvm上重新安装ruby

rvm remove 1.9.2
rvm install 1.9.2
Run Code Online (Sandbox Code Playgroud)

有用!