I want to use Rails with Ruby 2.1.0, but it's using Ruby 1.9.3 (the system's version).
I'm using rbenv to manage my Ruby versions. My steps were something along the lines of:
$ rbenv install 2.1.0
$ rbenv global 2.1.0
$ sudo gem install rails -v 4.0.2
$ rbenv rehash
$ rbenv versions
system
* 2.1.0 (set by /home/dennis/.rbenv/version)
$ ruby -v
ruby 2.1.0p0 (2013-12-25 revision 44422) [x86_64-linux]
$ rails new app && cd app
$ rails server
Rails is using is Ruby 1.9.3 (x86_64-linux), according to localhost:3000/rails/info/properties
. A log message from rails server
gives: INFO ruby 1.9.3 (2012-04-20) [x86_64-linux]
.
I think Rails is using the system version of Ruby because the versions match.
$ rbenv local system
$ ruby -v
ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-linux]
$ rbenv local --unset # Unset local Ruby version, go back to 2.1.0
Some things I've tried with no luck:
2.1.0
in a .ruby-version
file in the root of my project (suggested by @Agis)FWIW, I'm using Ubuntu 13.10 with the fish shell.
You didn't tell how you installed rbenv
, but I think it is per-user installation (which is default). In this case you should install gems without using sudo
. When you did sudo gem install rails
, it was installed in system ruby, not rbenv's selected one.
Solution - install rails without sudo:
rbenv global 2.1.0
gem install rails
rbenv rehash
Try creating a .ruby-version
file in the root of your project with the following contents:
2.1.0
Sounds silly, but did you restart terminal session?
Otherwise try and type
/bin/bash --login
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With