省エネエンジニア

ゆるっとエンジニアやってます。働きたくない系エンジニア。Android、Webのお仕事やってます。

【Ruby】bundle installに疲れた話

とある事情によりrailsの環境を作る必要があったので、 対象のリポジトリのREADMEに書かれた通りにインストールすることにしたのですが、 なんやかんやうまく行かなかったので残そうと思います。

READMEに書かれていたこと

  • rbenv install 2.3.1
  • gem install bunlder
  • bundle install

まあ、これだけなんですがこの3行を成功させる為に2時間くらいかかりました。

環境

MacOS(10.13.2)

rbenvのインストル

macは購入したばかりで何も入っていない状態でした。 rbenvをインストールする為にやったことは以下です。

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
brew doctor
# Your system is ready to brew. (←これがでれば成功)
brew update
brew install rbenv

ここまではすんなり行きました。

ruby2.3.1のインストール

  • このプロジェクトでは2.3.1で動かしてねっていう規定があったのでこれをrbenvでインストール
rbenv versions
  system
* 2.3.1 (set by /Users/xxxxxx/.rbenv/version)

入ってるっぽい。

が、

ruby -v
ruby 2.3.3p222 (2016-11-21 revision 56859) [universal.x86_64-darwin17]

ってなる。

rbenvでインストールしたrubyが使われてないみたいですね。

rbenv local 2.3.1
rbenv rehash

ってしたけど状況変わらず。

rbenv init
# Load rbenv automatically by adding
# the following to ~/.bash_profile:

eval "$(rbenv init -)"

ってでるので、.bash_profileにeval "$(rbenv init -)"を追加。

ruby -v
ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-darwin17]

良さそう。

bundle install

ここで、bundle installを叩くと。

Your Ruby version is 2.3.3, but your Gemfile specified 2.3.1

なんでじゃ。

which bundle
# /usr/local/bin/bundle

ローカルにbundlerが入ってないのが原因だったっぽいです。

sudo gem install bundler

でbundlerをインストール。

which bundle
# /Users/xxxxxx/.rbenv/shims/bundle

これでやっと、bundle installが叩けるようになりました。

まとめ

railsの環境を死ぬほど作ってきた人には簡単なんでしょうかね。 初心者にはきついです。 結局ローカルで動かすのに2時間くらいかかりました。 もっと簡単に環境が作れるといいのになー。 rbenv、プロジェクト毎にバージョンが変えられて便利なんでしょうが、 もちょっとよしなにやっていただきたいですね。 とにかく動いてよかったです。