使用RVM时如何安装Rails应用程序?

时间:2012-03-23 20:15:14

标签: ruby-on-rails ruby rvm

我已按照this question on SO的说明设置RVM,红宝石和宝石列表。

我创建了红宝石1.8.7和1.9.3。对于ruby 1.8.7,我创建了一个名为Organisator的gemset。

我已经激活了1.8.7 ruby​​和gemset" Organisator"。

我导航到我的应用程序的文件夹并尝试运行捆绑安装。我假设我应该如何安装我的应用程序所需的宝石,就像我没有RVM时那样。

我收到错误消息:

root@user-VirtualBox:/home/user/RoR/testapp# bundle install
Fetching gem metadata from https://rubygems.org/.Unfortunately, a fatal error has occurred. Please report this error to the Bundler issue tracker at https://github.com/carlhuda/bundler/issues so that we can fix it. Please include the full output of the command, your Gemfile and Gemfile.lock. Thanks!
/usr/local/rvm/rubies/ruby-1.8.7-p358/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:36:in `gem_original_require': no such file to load -- openssl (LoadError)
    from /usr/local/rvm/rubies/ruby-1.8.7-p358/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:36:in `require'
    from /usr/local/rvm/rubies/ruby-1.8.7-p358/lib/ruby/1.8/net/https.rb:102
    from /usr/local/rvm/rubies/ruby-1.8.7-p358/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:36:in `gem_original_require'
    from /usr/local/rvm/rubies/ruby-1.8.7-p358/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:36:in `require'
    from /usr/local/rvm/gems/ruby-1.8.7-p358@organizators/gems/bundler-1.1.2/lib/bundler/vendor/net/http/persistent.rb:447:in `ssl'
    from /usr/local/rvm/gems/ruby-1.8.7-p358@organizators/gems/bundler-1.1.2/lib/bundler/vendor/net/http/persistent.rb:216:in `connection_for'
    from /usr/local/rvm/gems/ruby-1.8.7-p358@organizators/gems/bundler-1.1.2/lib/bundler/vendor/net/http/persistent.rb:358:in `request'
    from /usr/local/rvm/gems/ruby-1.8.7-p358@organizators/gems/bundler-1.1.2/lib/bundler/fetcher.rb:135:in `fetch'
    from /usr/local/rvm/gems/ruby-1.8.7-p358@organizators/gems/bundler-1.1.2/lib/bundler/fetcher.rb:163:in `fetch_dependency_remote_specs'
    from /usr/local/rvm/gems/ruby-1.8.7-p358@organizators/gems/bundler-1.1.2/lib/bundler/fetcher.rb:122:in `fetch_remote_specs'
    from /usr/local/rvm/gems/ruby-1.8.7-p358@organizators/gems/bundler-1.1.2/lib/bundler/fetcher.rb:70:in `specs'
    from /usr/local/rvm/gems/ruby-1.8.7-p358@organizators/gems/bundler-1.1.2/lib/bundler/source.rb:234:in `remote_specs'
    from /usr/local/rvm/gems/ruby-1.8.7-p358@organizators/gems/bundler-1.1.2/lib/bundler/source.rb:232:in `each'
    from /usr/local/rvm/gems/ruby-1.8.7-p358@organizators/gems/bundler-1.1.2/lib/bundler/source.rb:232:in `remote_specs'
    from /usr/local/rvm/gems/ruby-1.8.7-p358@organizators/gems/bundler-1.1.2/lib/bundler/source.rb:165:in `fetch_specs'
    from /usr/local/rvm/gems/ruby-1.8.7-p358@organizators/gems/bundler-1.1.2/lib/bundler/source.rb:70:in `specs'
    from /usr/local/rvm/gems/ruby-1.8.7-p358@organizators/gems/bundler-1.1.2/lib/bundler/lazy_specification.rb:53:in `__materialize__'
    from /usr/local/rvm/gems/ruby-1.8.7-p358@organizators/gems/bundler-1.1.2/lib/bundler/spec_set.rb:86:in `materialize'
    from /usr/local/rvm/gems/ruby-1.8.7-p358@organizators/gems/bundler-1.1.2/lib/bundler/spec_set.rb:83:in `map!'
    from /usr/local/rvm/gems/ruby-1.8.7-p358@organizators/gems/bundler-1.1.2/lib/bundler/spec_set.rb:83:in `materialize'
    from /usr/local/rvm/gems/ruby-1.8.7-p358@organizators/gems/bundler-1.1.2/lib/bundler/definition.rb:127:in `specs'
    from /usr/local/rvm/gems/ruby-1.8.7-p358@organizators/gems/bundler-1.1.2/lib/bundler/definition.rb:122:in `resolve_remotely!'
    from /usr/local/rvm/gems/ruby-1.8.7-p358@organizators/gems/bundler-1.1.2/lib/bundler/installer.rb:48:in `run'
    from /usr/local/rvm/gems/ruby-1.8.7-p358@organizators/gems/bundler-1.1.2/lib/bundler/installer.rb:12:in `install'
    from /usr/local/rvm/gems/ruby-1.8.7-p358@organizators/gems/bundler-1.1.2/lib/bundler/cli.rb:220:in `install'
    from /usr/local/rvm/gems/ruby-1.8.7-p358@organizators/gems/bundler-1.1.2/lib/bundler/vendor/thor/task.rb:22:in `send'
    from /usr/local/rvm/gems/ruby-1.8.7-p358@organizators/gems/bundler-1.1.2/lib/bundler/vendor/thor/task.rb:22:in `run'
    from /usr/local/rvm/gems/ruby-1.8.7-p358@organizators/gems/bundler-1.1.2/lib/bundler/vendor/thor/invocation.rb:118:in `invoke_task'
    from /usr/local/rvm/gems/ruby-1.8.7-p358@organizators/gems/bundler-1.1.2/lib/bundler/vendor/thor.rb:263:in `dispatch'
    from /usr/local/rvm/gems/ruby-1.8.7-p358@organizators/gems/bundler-1.1.2/lib/bundler/vendor/thor/base.rb:386:in `start'
    from /usr/local/rvm/gems/ruby-1.8.7-p358@organizators/gems/bundler-1.1.2/bin/bundle:13
    from /usr/local/rvm/gems/ruby-1.8.7-p358@organizators/bin/bundle:19:in `load'
    from /usr/local/rvm/gems/ruby-1.8.7-p358@organizators/bin/bundle:19

我在尝试创建新应用时收到错误消息:

root@user-VirtualBox:/home/user/RoR# rails new testapp
/usr/lib/ruby/vendor_ruby/railties/lib/rails_generator.rb:30:in `require': no such file to load -- active_support (LoadError)
    from /usr/lib/ruby/vendor_ruby/railties/lib/rails_generator.rb:30
    from /usr/lib/ruby/vendor_ruby/railties/bin/rails:16:in `require'
    from /usr/lib/ruby/vendor_ruby/railties/bin/rails:16

我认为在设置RVM时我做错了。 我现在唯一的想法是从我的gemfile安装所有gem并手动将它们添加到gemfile。

版本

  • Ruby 1.8.7-p358
  • Rails 2.3.1.4
  • RVM 1.10.3
  • Ubuntu 11.10

2 个答案:

答案 0 :(得分:1)

请使用此处https://rvm.io/packages/openssl/

中的“快速解决方法”

你必须忽略其余的指令,它们适用于不支持包的系统(如osx)

答案 1 :(得分:0)

是的,你错过了openssl,输入这个,应该工作

rvm pkg install openssl
rvm pkg install iconv
rvm remove 1.8.7
rvm install 1.8.7 -C --with-openssl-dir=$HOME/.rvm/usr,--with-iconv-dir=$HOME/.rvm/usr