Could not find rails (>= 0) amongst [] (Gem::LoadError)

53,004

Solution 1

I had to sudo gem install bundler to make it work again.

Solution 2

I've had a similiar problem. Not sure if that helps you, but you might try to install gems with rvmsudo gem install [gemname] instead of just doing gem install [gemname] or sudo gem install [gemname].

I try to explain this a bit because of the upvotes:
This basically is a path issue. If you set up gems via gem install, they mostly likely will be in another directory (e.g. /usr/local/) compared to gems set up via bundler (where you can override it with --path). Using sudo may also set them up into another directory since sudo starts a subshell which has a different environment then. This is why you have rvmsudo.

If you want to see the differences, compare $PATH, $GEM_HOME, $GEM_PATH and $BUNDLE_PATH when echoing directly, with sudo and with rvmsudo.

Solution 3

I got a problem similar to this, there may be a compatible problem of rvm. I fixed by updating rvm to latest version:

curl -L https://get.rvm.io | bash -s stable --ruby

Then you should reload rvm or just open new terminal window. Then I reinstalled the bundler 'gem install bundler' and ran 'bundle install' as normal

Solution 4

rvm rubygems current

did the trick for me.

Solution 5

remove ruby first then

sudo apt-get install build-essential libssl-dev libreadline5 libreadline5-dev zlib1g zlib1g-dev

to install all needed lib then you could install ruby and rails

rvm install 1.9.3
rvm --default use 1.9.3
rvm gem install rails
Share:
53,004
rigyt
Author by

rigyt

Updated on April 07, 2020

Comments

  • rigyt
    rigyt about 4 years

    After installing rvm, updating .gmrc file, updating rubygems and running gem install rails -v ">=3.1.0rc", I now seem to have a complete mess:

    $ rails -v
    /usr/local/lib/site_ruby/1.8/rubygems/dependency.rb:247:in `to_specs': Could not find rails (>= 0) amongst [] (Gem::LoadError)
        from /usr/local/lib/site_ruby/1.8/rubygems/dependency.rb:256:in `to_spec'
        from /usr/local/lib/site_ruby/1.8/rubygems.rb:1182:in `gem'
        from /var/lib/gems/1.8/bin/rails:18
    

    myhome@myhome-mini:~$ gem env
    
    RubyGems Environment:
      - RUBYGEMS VERSION: 1.6.2
      - RUBY VERSION: 1.9.2 (2011-02-18 patchlevel 180) [i686-linux]
      - INSTALLATION DIRECTORY: /home/myhome/gems
      - RUBY EXECUTABLE: /home/myhome/.rvm/rubies/ruby-1.9.2-p180/bin/ruby
      - EXECUTABLE DIRECTORY: /home/myhome/gems/bin
      - RUBYGEMS PLATFORMS:
        - ruby
        - x86-linux
      - GEM PATHS:
         - /home/myhome/gems
         - /usr/lib/ruby/gems/1.8
      - GEM CONFIGURATION:
         - :update_sources => true
         - :verbose => true
         - :benchmark => false
         - :backtrace => false
         - :bulk_threshold => 1000
         - "gemhome" => "/home/myhome/gems"
         - "gempath" => ["/home/myhome/gems", "/usr/lib/ruby/gems/1.8"]
      - REMOTE SOURCES:
         - http://rubygems.org/
    
  • jmervine
    jmervine over 11 years
    If you already have rvm installed and a newer version, this should do the same thing: rvm get stable --auto
  • badsyntax
    badsyntax almost 11 years
    This comment is especially useful for installing gems on travis-ci.org
  • Shaker Ahamed
    Shaker Ahamed over 9 years
    i have this issue when creating my own gems and still developing them. In the main app i use path to reference the folder. when outside the application directory and I want to do something like rails -v I get this error saying it cannot find a custom gem I am developing. Any recommendations on a potential fix?
  • iphone007
    iphone007 almost 9 years
    God, sometimes the Ruby ecosystem just makes me scream and cry.
  • ViniciusPires
    ViniciusPires over 7 years
    What if I already have bundler and it still doesn't work? (that's my case)