Search code examples
ruby-on-railsrubywebrick

Rails server and console fails to start due to Authlogic for ruby 2.0 and rails 3.2


I have ruby version 2.0.0p451 and rails version 3.2.13. I ran bundle install and all the gems are installed. When I try the rails s command I get the following error:

The issue seems to be with authlogic. I uninstalled it and the server starts fine. Any ideas?

   /usr/local/lib/ruby/gems/2.0.0/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:251:in `require': cannot load such file -- scrypt (LoadError)
        from /usr/local/lib/ruby/gems/2.0.0/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:251:in `block in require'
        from /usr/local/lib/ruby/gems/2.0.0/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:236:in `load_dependency'
        from /usr/local/lib/ruby/gems/2.0.0/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:251:in `require'
        from /usr/local/lib/ruby/gems/2.0.0/bundler/gems/authlogic-f19ff3a9eb88/lib/authlogic/crypto_providers/scrypt.rb:1:in `<top (required)>'
        from /usr/local/lib/ruby/gems/2.0.0/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:251:in `require'
        from /usr/local/lib/ruby/gems/2.0.0/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:251:in `block in require'
        from /usr/local/lib/ruby/gems/2.0.0/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:236:in `load_dependency'
        from /usr/local/lib/ruby/gems/2.0.0/gems/activesupport-3.2.13/lib/active_support/dependencies.rb:251:in `require'
        from /usr/local/lib/ruby/gems/2.0.0/bundler/gems/authlogic-f19ff3a9eb88/lib/authlogic.rb:60:in `block in <top (required)>'
        from /usr/local/lib/ruby/gems/2.0.0/bundler/gems/authlogic-f19ff3a9eb88/lib/authlogic.rb:59:in `each'
        from /usr/local/lib/ruby/gems/2.0.0/bundler/gems/authlogic-f19ff3a9eb88/lib/authlogic.rb:59:in `<top (required)>'
        from /usr/local/lib/ruby/gems/2.0.0/gems/bundler-1.6.1/lib/bundler/runtime.rb:76:in `require'
        from /usr/local/lib/ruby/gems/2.0.0/gems/bundler-1.6.1/lib/bundler/runtime.rb:76:in `block (2 levels) in require'
        from /usr/local/lib/ruby/gems/2.0.0/gems/bundler-1.6.1/lib/bundler/runtime.rb:72:in `each'
        from /usr/local/lib/ruby/gems/2.0.0/gems/bundler-1.6.1/lib/bundler/runtime.rb:72:in `block in require'
        from /usr/local/lib/ruby/gems/2.0.0/gems/bundler-1.6.1/lib/bundler/runtime.rb:61:in `each'
        from /usr/local/lib/ruby/gems/2.0.0/gems/bundler-1.6.1/lib/bundler/runtime.rb:61:in `require'
        from /usr/local/lib/ruby/gems/2.0.0/gems/bundler-1.6.1/lib/bundler.rb:132:in `require'
        from /home/superq/quizot/config/application.rb:7:in `<top (required)>'
        from /usr/local/lib/ruby/gems/2.0.0/gems/railties-3.2.13/lib/rails/commands.rb:53:in `require'
        from /usr/local/lib/ruby/gems/2.0.0/gems/railties-3.2.13/lib/rails/commands.rb:53:in `block in <top (required)>'
        from /usr/local/lib/ruby/gems/2.0.0/gems/railties-3.2.13/lib/rails/commands.rb:50:in `tap'
        from /usr/local/lib/ruby/gems/2.0.0/gems/railties-3.2.13/lib/rails/commands.rb:50:in `<top (required)>'
        from script/rails:6:in `require'
        from script/rails:6:in `<main>'

When I try opening the console, this is what I get:

/usr/local/lib/ruby/2.0.0/irb/completion.rb:9:in `require': cannot load such file -- readline (LoadError)
    from /usr/local/lib/ruby/2.0.0/irb/completion.rb:9:in `<top (required)>'
    from /usr/local/lib/ruby/gems/2.0.0/gems/railties-3.2.13/lib/rails/commands/console.rb:3:in `require'
    from /usr/local/lib/ruby/gems/2.0.0/gems/railties-3.2.13/lib/rails/commands/console.rb:3:in `<top (required)>'
    from /usr/local/lib/ruby/gems/2.0.0/gems/railties-3.2.13/lib/rails/commands.rb:38:in `require'
    from /usr/local/lib/ruby/gems/2.0.0/gems/railties-3.2.13/lib/rails/commands.rb:38:in `<top (required)>'
    from script/rails:6:in `require'
    from script/rails:6:in `<main>'

I have already uninstalled ruby,rails and installed a couple of times. Nothing seems to be working. Any ideas?

I have only one rails application and would never require another rails application on this machine. All gems installed are for this application only. It was working fine but my hard drive crashed and now I am trying to setup the same application on a new hard drive.


Solution

  • Had the same error with scrypt and bcrypt while updating to authlogic-3.4.1

    The solution for me was to add the scrypt gem into my gemfile:

    gem 'authlogic', '~> 3.4.1'
    gem 'bcrypt', '~> 3.1.7'
    gem 'scrypt', '1.2.1'