Ruby on Railsの環境をローカルに構築する際、rbenvでrubyのバージョンが上手いこと切り替わらなかったので、切り替わるまでに試したことをメモ。
原因は不明ですが、今のところ上手く切り替わってるように見えます(モヤモヤ)。
rbenvによるバージョン切り替え手順
(1) homebrewでrbenvとruby-buuildをインストール【→問題なし】
$ brew install rbenv ruby-build $ rbenv -v rbenv 1.1.1 |
(2) rbenvでruby2.5.1をインストール【→問題なし】
$ echo ‘eval “$(rbenv init -)”‘ >> ~/.bash_profile $ source ~/.bash_profile $ rbenv install –list $ rbenv install 2.5.1 $ rbenv versions * system (set by /Users/ユーザ名/.rbenv/version) 2.5.1 |
(3) rbenv で 2.5.1 に切り替え【→問題あり】
$ rbenv global 2.5.1 $ ruby -v ruby 2.3.7p456 (2018-03-28 revision 63024) [universal.x86_64-darwin17] |
あれれ?ということで、ここから原因調査。
原因調査
rbenvで再度バージョンを確認します。
$ rbenv versions system * 2.5.1 (set by /Users/user/.rbenv/version) |
先頭に「*」があるので切り替わっているっぽい。
次にrubyコマンドの場所を確認します。
$ which ruby /Users/user/.rbenv/shims/ruby |
ホームディレクトリ配下の.rbenv/shims/rubyになっているので問題なさそう。はて???
念のため上記rubyコマンドの場所がパス(環境変数の$PATH)に入っているかを確認します。
$ echo $PATH /Users/user/.rbenv/shims:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin |
ちゃんと最初に入ってますね。。。
念のため、~/.bash_profileの中身を確認してみても、以下のとおり正しく書かれているっぽい。
$ cat ~/.bash_profile eval “$(rbenv init -)” |
ダメ元でターミナルを開き直しても変わらず。。。。
こういう時はGoogleで!「rbenv 切り替わらない」で検索すると、皆さんパスの設定ミスや.ruby_versionファイルが残ってたなどが原因の模様。うーん、パスもちゃんと通っているように見えるし、.ruby_versionも無いんだけどな。。。
といくつか検索結果をポチポチみていたところ、あるサイトで次の1行を.bash_profileに書く必要があるとのこと。
export PATH=”$HOME/.rbenv/bin:$PATH” |
う〜ん、.rbenv の下に bin なんてフォルダは無いし、2年前の情報なので違うかな〜。
とは思いつつダメ元で試してみたところ、バージョンが切り替わりました!(なぜ・・・?)
$ ruby -v ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-darwin17] |
でも、やっぱり $HOME/.rbenv/bin なんてパスは存在していないので、無くても良いんじゃない?ということで一度 .bash_profileファイルを削除して、作り直してみました。
$ echo ‘eval “$(rbenv init -)”‘ >> ~/.bash_profile $ source ~/.bash_profile $ ruby -v ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-darwin17] |
うーん、上手く切り替わってます。(やっぱり最後に追加した1行は無くても良いっぽいけど、なぜ・・・?)
念のため元のバージョンに戻したり、再度 ver2.5.1に切り替えてたりしても今度は問題なし。(むむむ・・・)
$ rbenv global system $ ruby -v ruby 2.3.7p456 (2018-03-28 revision 63024) [universal.x86_64-darwin17]$ rbenv global 2.5.1 $ ruby -v ruby 2.5.1p57 (2018-03-29 revision 63029) [x86_64-darwin17] |
で、Ruby on Rails のインストール自体は下記コマンドですんなり行きました。
$ gem install rails |
モヤッとしますが、ひとまず問題なさそうなので、このままで。
コメント