Ruby on rails 使用ruby 1.9.2、rails3.1.0,为什么在尝试生成脚手架时会出现错误。

Ruby on rails 使用ruby 1.9.2、rails3.1.0,为什么在尝试生成脚手架时会出现错误。,ruby-on-rails,ruby,gem,rvm,Ruby On Rails,Ruby,Gem,Rvm,基本上,当我试图生成一个脚手架时,我得到了这个错误 没有要加载的文件--openssl(LoadError)。 错误来自于 .rvm/gems/ruby-1.9.2-p290@rails310/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:240:in `block in require' 不知道为什么会这样。以下是全部错误: /home/spencer/.rvm/gems/ruby-1.9.2-p290@rails31

基本上,当我试图生成一个脚手架时,我得到了这个错误
没有要加载的文件--openssl(LoadError)
。 错误来自于

.rvm/gems/ruby-1.9.2-p290@rails310/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:240:in `block in require'
不知道为什么会这样。以下是全部错误:

/home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/rack-1.3.4/lib/rack/backports/uri/common_192.rb:53: warning: already initialized constant WFKV_
/home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:240:in `require': no such file to load -- openssl (LoadError)
    from /home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:240:in `block in require'
    from /home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:223:in `block in load_dependency'
    from /home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:640:in `new_constants_in'
    from /home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:223:in `load_dependency'
    from /home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:240:in `require'
    from /home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/rack-1.3.4/lib/rack/session/cookie.rb:1:in `<top (required)>'
    from /home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:240:in `require'
    from /home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:240:in `block in require'
    from /home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:223:in `block in load_dependency'
    from /home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:640:in `new_constants_in'
    from /home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:223:in `load_dependency'
    from /home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/activesupport-3.1.0/lib/active_support/dependencies.rb:240:in `require'
    from /home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/actionpack-3.1.0/lib/action_dispatch/middleware/session/cookie_store.rb:4:in `<top (required)>'
    from /home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/railties-3.1.0/lib/rails/application/configuration.rb:125:in `const_get'
    from /home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/railties-3.1.0/lib/rails/application/configuration.rb:125:in `session_store'
    from /home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/railties-3.1.0/lib/rails/application.rb:168:in `block in default_middleware_stack'
    from /home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/railties-3.1.0/lib/rails/application.rb:142:in `tap'
    from /home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/railties-3.1.0/lib/rails/application.rb:142:in `default_middleware_stack'
    from /home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/railties-3.1.0/lib/rails/engine.rb:445:in `app'
    from /home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/railties-3.1.0/lib/rails/application/finisher.rb:37:in `block in <module:Finisher>'
    from /home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/railties-3.1.0/lib/rails/initializable.rb:25:in `instance_exec'
    from /home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/railties-3.1.0/lib/rails/initializable.rb:25:in `run'
    from /home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/railties-3.1.0/lib/rails/initializable.rb:50:in `block in run_initializers'
    from /home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/railties-3.1.0/lib/rails/initializable.rb:49:in `each'
    from /home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/railties-3.1.0/lib/rails/initializable.rb:49:in `run_initializers'
    from /home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/railties-3.1.0/lib/rails/application.rb:92:in `initialize!'
    from /home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/railties-3.1.0/lib/rails/railtie/configurable.rb:30:in `method_missing'
    from /home/spencer/Desktop/blog/config/environment.rb:5:in `<top (required)>'
    from /home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/railties-3.1.0/lib/rails/application.rb:78:in `require'
    from /home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/railties-3.1.0/lib/rails/application.rb:78:in `require_environment!'
    from /home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/railties-3.1.0/lib/rails/commands.rb:22:in `<top (required)>'
    from script/rails:6:in `require'
    from script/rails:6:in `<main>'
/home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/rack-1.3.4/lib/rack/backport/uri/common_192.rb:53:警告:已初始化常量WFKV_
/home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/activesupport-3.1.0/lib/active\u support/dependencies.rb:240:in'require':没有这样的文件要加载——openssl(LoadError)
from/home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/activesupport-3.1.0/lib/active\u-support/dependencies.rb:240:in'block-in-require'
from/home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/activesupport-3.1.0/lib/active\u-support/dependencies.rb:223:in'block-in-load\u-dependencity'
from/home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/activesupport-3.1.0/lib/active\u-support/dependencies.rb:640:in'new\u-constants\u-in'
from/home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/activesupport-3.1.0/lib/active\u-support/dependencies.rb:223:in'load\u-dependency'
from/home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/activesupport-3.1.0/lib/active\u-support/dependencies.rb:240:in'require'
from/home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/rack-1.3.4/lib/rack/session/cookie.rb:1:in`'
from/home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/activesupport-3.1.0/lib/active\u-support/dependencies.rb:240:in'require'
from/home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/activesupport-3.1.0/lib/active\u-support/dependencies.rb:240:in'block-in-require'
from/home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/activesupport-3.1.0/lib/active\u-support/dependencies.rb:223:in'block-in-load\u-dependencity'
from/home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/activesupport-3.1.0/lib/active\u-support/dependencies.rb:640:in'new\u-constants\u-in'
from/home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/activesupport-3.1.0/lib/active\u-support/dependencies.rb:223:in'load\u-dependency'
from/home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/activesupport-3.1.0/lib/active\u-support/dependencies.rb:240:in'require'
from/home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/actionpack-3.1.0/lib/action\u dispatch/middleware/session/cookie\u store.rb:4:in`'
from/home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/railties-3.1.0/lib/rails/application/configuration.rb:125:in'const_get'
from/home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/railties-3.1.0/lib/rails/application/configuration.rb:125:in'session_store'
from/home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/railties-3.1.0/lib/rails/application.rb:168:in`block in default\u middleware\u stack'
from/home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/railties-3.1.0/lib/rails/application.rb:142:in'tap'
from/home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/railties-3.1.0/lib/rails/application.rb:142:in'default\u middleware\u stack'
from/home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/railties-3.1.0/lib/rails/engine.rb:445:in'app'
from/home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/railties-3.1.0/lib/rails/application/finisher.rb:37:in'block in'
from/home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/railties-3.1.0/lib/rails/initializable.rb:25:in'instance_exec'
from/home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/railties-3.1.0/lib/rails/initializable.rb:25:in'run'
from/home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/railties-3.1.0/lib/rails/initializable.rb:50:in`block in run_initializers'
from/home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/railties-3.1.0/lib/rails/initializable.rb:49:in'each'
from/home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/railties-3.1.0/lib/rails/initializable.rb:49:in'run_initializers'
from/home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/railties-3.1.0/lib/rails/application.rb:92:in'initialize!'
from/home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/railties-3.1.0/lib/rails/railtie/configurable.rb:30:in'method_missing'
from/home/spencer/Desktop/blog/config/environment.rb:5:in`'
from/home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/railties-3.1.0/lib/rails/application.rb:78:in'require'
from/home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/railties-3.1.0/lib/rails/application.rb:78:in“require_环境!”
from/home/spencer/.rvm/gems/ruby-1.9.2-p290@rails310/gems/railties-3.1.0/lib/rails/commands.rb:22:in`'
来自脚本/rails:6:in'require'
来自脚本/rails:6:in`'

如果您在linux中使用,您可以尝试这些

apt-get install openssl
apt-get install libopenssl-ruby

您应该能够这样做:(请原谅我的路径中可能有错误,并且我不在linux机器上)

基本上,只需将您的特定ruby版本cd到gem的源目录,然后重新构建/安装它


您不需要重建ruby,这是一个常见的问题

好吧,我最后做的就是这个

  • 已从rvm卸载所有版本的ruby
  • 从rvm中删除所有宝石
  • $rvm pkg安装openssl
  • $rvm套件安装zlib
  • $rvm安装1.9.2——使用openssl目录=$HOME/.rvm/usr——使用zlib目录=$rvm_路径/usr
  • 在gemset中重新安装导轨

从那以后一切都很好

除非他重新编译Ruby,否则这很可能无法解决问题。这个问题是由ruby编译过程中丢失的libopenssl ruby库引起的。如果偶然发现此问题仍然存在,请阅读
rvm notes
的输出,它将告诉您要安装的确切软件包。我正在尝试这个。马上发现。。。。没用。
cd to ~.rvm/src/ruby-1.9.2-p290/ext/openssl
ruby extconf.rb
make
make install