chroju.dev/blog

the world as code

Rails環境構築(2)Rubyのインストール + α

環境構築エントリーその2。まっさらなOSにRubyを入れていきます。

まずはいろいろパッケージのインストール。ぶっちゃけ参考書通りにやってるだけなので、どこまで必要なのかはよくわかってない。wgetとgitが必須であるのは言わずもがなだし、openssl-devel、make、postgresqlなんかもまぁ必要だろう。gccとかは要る……のか?

$ sudo yum -y install gcc gcc-c++ make autoconf openssl-devel readline-devel libyaml-devel postgresql9.1-devel wget git

続いて意気揚々とRubyを入れたいとこだが、その前にrbenvを入れる。以前にエントリーで書いたこともあったけど、rbenvを使ってRubyをインストールすると、複数のバージョンのRubyを切り替えて使えるようになるので大変便利。インストールもwgetでダウンロードしてビルドしてなんてやり方をせず、rbenv installコマンドで簡単にできるようになる。

$ git clone git://github.com/sstephenson/rbenv.git ~/.rbenv
$ git clone git://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build

rbenv自体のインストールもgithubからのクローンで済むのでスマートですね。ついでにもう1個git cloneしているのはruby-buildって奴で、これがないとrbenv install(rbenv使ってRubyをインストールするためのコマンド)が使えないらしい。で、入れたらPATHを通します。

$ echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
$ echo 'eval "$(rbenv init -)"' >> ~/.bash_profile

PATHを通したらbash_profileを再読み込みして、それからtype rbenvコマンドを打ってインストールの正常完了を確認する。ちなみに自分は最初、bash_profileの再読み込み忘れて慌てました。

$ source ~/.bash_profile
$ type rbenv # rbenv is a functionと表示されればOK

ここまでの手順はGitHubでrbenvのREADMEにも書かれてるから一読を推奨。

rbenvが入ったので、早速Rubyをインストール。

$ rbenv install --list #インストール可能なバージョンが一覧表示される
$ rbenv install 1.9.3-p484 #入れるバージョンは任意で

もちろん複数バージョン入れてもOK。Rubyのインストールが完了したら、どのバージョンを使うか確定させる。使うコマンドはrbenv global。安易に想像できる話ではあるが、rbenv localもある。前者が文字通りシステム全体、どのシェルでも使われるバージョンであるのに対し、後者はローカル環境、すなわち今後入れるRailsのアプリケーションディレクトリとか、そういう環境でのRubyバージョンを指定するもの。今はローカル環境がないので、rbenv globalだけ指定すればいい。

$ rbenv global 1.9.3-p484
$ ruby -v #確認

以上でRubyは入ったわけだけど、ついでに今後使うのでBundlerも入れておく。BundlerはRubyGemsを管理するためのツールであり、RubyGemsとはRubyのパッケージ管理システムのことである。GemはRailsでもめちゃめちゃ使うし、そもそものRailsもGemで入れることになるので、ここでBundlerを入れておく。

ちなみにGem自体はRubyと一緒にすでに入っている。が、バージョンが古い場合があるので更新してあげる必要がある。GemだけでももちろんRailsをインストールしたりはできるんだけど、その後の落とした各Gemの管理がマンドクセーってなるので、Bundlerが必要になる。まぁ詳しくは次回あたりで。

$ gem update --system
$ gem -v #最新のバージョンになったことを確認

じゃあ喜び勇んでGemを使ってBundler入れましょう!と行きたいところだが、まだやることがある。デフォルトだとGemで何かをインストールしたとき、ずらずらーっとメッセージが出てくるのだが、それを消すためのおまじない。これで体感2倍ぐらいインストールが速くなるらしい。方法は簡単で、~/.gemrcファイルを新規で作成して、以下の内容を書き入れる。

gem: --no-ri --no-rdoc

書き入れるって簡単にいうけどエディタは何使えばいいんだよ?って人はviあたり使っとけばいいと思う。もっといえば$ sudo yum install vimすればいいと思うんだが、そのあたりの話はまたおいおい。

はい、やっとこれで準備完了。Bundler入れます。

$ rbenv exec gem install bundler
$ bundle -v

これで作業完了!のはずなんだが、なぜか自分はbundleにPATHが通ってなかったらしく、$ bundle -vできませんでした。なんでだろ? 仕方ないのでココのやり方に従ってなんとかPATHは通ったんだけど、リンク先が何をやっていたのかはっきり言ってわかっておらず、不安。EXECUTABLE DIRECTORYってなんスか?

まーとりあえずRubyとBundlerは入ったので、次回はRailsのインストールといきますかね。

参考