20

I messed up my configuration. I am running Ubuntu 14.04 and had some issues when I tried to move from a project to an other. I tried to uninstall and reinstall rbenv and then installed Ruby 2.1.7 following this guide: https://gorails.com/setup/ubuntu/14.04.

Now, when I run gem install bundler nothing happens and I can't install any gems. When I type bundler or bundler -v I see this:

/usr/local/bin/bundler: /usr/bin/ruby1.9.1: bad interpreter: No such file or directory

I spent many hours trying to solve this but I really don't know what to do.

the Tin Man
  • 158,662
  • 42
  • 215
  • 303
Badr Tazi
  • 749
  • 1
  • 6
  • 20
  • 3
    Rule one: Be VERY careful following instructions on websites describing how to install anything. There is no garbage collection on the internet, so old, outdated, or simply bad, information can sit around, polluting people's minds about how to do things. Go to the authors and maintainers for installation instructions as they know better than anyone how to install their code. – the Tin Man Sep 29 '15 at 23:13

2 Answers2

30

Find the bundle executable (in a non project directory - default system ruby) and delete it:

which bundle

rm <path_obtained_above>

Now go to your project directory, or switch to your ruby version and install bundler:

gem install bundler

Then execute rbenv rehash

and now try executing bundle install and it should work. You will need to do this once for each ruby version installed.

amit_saxena
  • 7,450
  • 5
  • 49
  • 64
  • 1
    This is what worked for me. The `rbenv rehash` function found the proper `bundle` executable. – tmarthal Jan 10 '17 at 20:39
  • 1
    On WSL, `bundle` was trying to use `ruby.exe` from Windows!!! All I had to do was rbenv rehash. Thank you! – Leonel May 05 '17 at 22:32
15

The fact that gem is being executed by your /usr/local/bin means that rbenv isn't in your $PATH correctly.

Step 1:

Please delete any references you have of rbenv in the following areas:

  • ~/.profile
  • ~/.bashrc
  • ~/.bash_profile
  • ~/.gemrc

Step 2:

Reinstall rbenv using these instructions. It won't override, it will simply update changes to your ~/.bash_profile. Once reinstalled close your terminal and reopen. Everything should work correctly at that time.

Step 3:

Verify that everything was installed correctly by executing cat ~/.bash_profile. You should see the following. If you do, you're good to go.

export PATH="$HOME/.rbenv/bin:$PATH"
eval "$(rbenv init -)"

Many cudos to @theTinMan for recently helping me sort through my rbenv installation.

Community
  • 1
  • 1
binarymason
  • 1,351
  • 1
  • 14
  • 31