Ruby 为什么Rails控制台会说;无法加载这样的文件--readline";?

Ruby 为什么Rails控制台会说;无法加载这样的文件--readline";?,ruby,ruby-on-rails-3.2,rails-console,Ruby,Ruby On Rails 3.2,Rails Console,我是RubyonRails新手,正在使用RVM管理Ruby版本 我的笔记本电脑安装了Ruby1.8.7,但我的项目使用的是RVM、Ruby1.9.3和Rails 3.2.11 我无法运行rails c或rails console,除非它给出以下错误: /home/phil/.rvm/rubies/ruby-1.9.3-p392/lib/ruby/1.9.1/irb/completion.rb:9:in `require': cannot load such file -- readline (L

我是RubyonRails新手,正在使用RVM管理Ruby版本

我的笔记本电脑安装了Ruby1.8.7,但我的项目使用的是RVM、Ruby1.9.3和Rails 3.2.11

我无法运行
rails c
rails console
,除非它给出以下错误:

/home/phil/.rvm/rubies/ruby-1.9.3-p392/lib/ruby/1.9.1/irb/completion.rb:9:in `require': cannot load such file -- readline (LoadError)
from /home/phil/.rvm/rubies/ruby-1.9.3-p392/lib/ruby/1.9.1/irb/completion.rb:9:in `<top (required)>'
from /home/phil/.rvm/gems/ruby-1.9.3-p392/gems/railties-3.2.11/lib/rails/commands/console.rb:3:in `require'
from /home/phil/.rvm/gems/ruby-1.9.3-p392/gems/railties-3.2.11/lib/rails/commands/console.rb:3:in `<top (required)>'
from /home/phil/.rvm/gems/ruby-1.9.3-p392/gems/railties-3.2.11/lib/rails/commands.rb:38:in `require'
from /home/phil/.rvm/gems/ruby-1.9.3-p392/gems/railties-3.2.11/lib/rails/commands.rb:38:in `<top (required)>'
from script/rails:6:in `require'
from script/rails:6:in `<main>'
/home/phil/.rvm/rubies/ruby-1.9.3-p392/lib/ruby/1.9.1/irb/completion.rb:9:在'require'中:无法加载这样的文件--readline(LoadError)
from/home/phil/.rvm/rubies/ruby-1.9.3-p392/lib/ruby/1.9.1/irb/completion.rb:9:in`'
from/home/phil/.rvm/gems/ruby-1.9.3-p392/gems/railties-3.2.11/lib/rails/commands/console.rb:3:in'require'
from/home/phil/.rvm/gems/ruby-1.9.3-p392/gems/railties-3.2.11/lib/rails/commands/console.rb:3:in`'
from/home/phil/.rvm/gems/ruby-1.9.3-p392/gems/railties-3.2.11/lib/rails/commands.rb:38:in'require'
from/home/phil/.rvm/gems/ruby-1.9.3-p392/gems/railties-3.2.11/lib/rails/commands.rb:38:in`'
来自脚本/rails:6:in'require'
来自脚本/rails:6:in`'

编译Ruby时需要安装readline库

如果您使用的是CentOS/Redhat/Fedora Linux,请使用以下方式安装该软件包:

sudo yum install readline-devel
或者,在Ubuntu上,使用:

sudo apt-get install libreadline6 libreadline6-dev

然后重新编译Ruby

您正在运行哪个
rails
命令?
哪个rails
的输出是什么?感谢Stuart的回复。我在下面回答。谢谢你回复斯图尔特和约翰。我运行“rvm use 1.9.3”,它显示回“ruby 1.9.3p392(2013-02-22修订版39386)[i686 linux]”。一切正常,只有在运行“RailsC”或“RailsConsole”时,才会出现上述错误。我运行了“sudo-apt-get-install-libreadline6-libreadline6-dev”并安装了它们,但不幸的是我仍然得到了错误。johnkoht-当你说“然后重新编译ruby”时,你的确切意思是什么?然后用“rvm卸载[RUBYVERSION],然后是rvm安装[RUBYVERSION]”重新编译ruby。现在可以了,非常感谢约翰·霍特,传奇人物!很高兴你让它工作(很抱歉,我直到现在才看到你的其他消息)。