Ruby実行環境の準備 @Ruby学習メモ

  • 1
    Like
  • 2
    Comment
More than 1 year has passed since last update.

0.Homebrew

Homebrewとは

Mac OS X向けのパッケージ管理システム。
Homebrewをインストールしておけば、brew install (インストールしたいもの)を実行するだけで、様々なパッケージを利用することができる。

ちなみに、Homebrewには「自家製ビール、自家醸造酒」の意味があり、ユーザー自らがビルドすることを意味しているそう。

Install

[Homebrew] http://brew.sh/

  • "Install Homebrew" の通りにインストール
$ ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/
homebrew/go/install)"
  • Homebrewのバージョンを確認する
$ brew -v
Homebrew 0.9.5
  • パッケージのアップデート
$ brew update
  • インストールが問題ないことの確認
$ brew doctor

 問題なく行われていれば、Your system is ready to brew. となる。

1.拡張ライブラリを入れる

Rubyを使うために、make install ruby をすればいいかというとそうではなく、これだと標準ライブラリのみの必要最低限のインストールになる。よって、必要な拡張ライブラリを適宜インストールする必要がある。

拡張ライブラリとは

  • 標準ライブラリ
    • Rubyのソース
  • 拡張ライブラリ
    • openssl …OpenSSLをRubyから扱うためのライブラリ
    • libyaml …構造化されたデータを表現するフォーマットであるYAML(YAML Ain't Markup Language)を扱うためのライブラリ
    • readline …GNU Readlineによるコマンドライン入力インタフェースを提供するライブラリ
    • zlib …zlibをRubyから使うための拡張ライブラリ。gzipファイルの読み書きもサポートしている。
    • gmp …大きな数を扱うときのライブラリ

Install

  • brew install 〜を使い、必要な拡張ライブラリをインストールする

 ※ zlibは元々macには入っているので、ここでは指定しない

$ brew install openssl libyaml readline gmp
  • OpenSSLなどの一部ライブラリはbrew install 〜してもMacでは利用されないそうで、brew link openssl --forceとしてパッケージを有効化させる必要がある
$ brew link openssl --force

(追記) brew link 〜 をしてopensslを有効にする

  • 現在の状態を確認
$  which openssl
/usr/bin/openssl
$  openssl version
OpenSSL 0.9.8y 5 Feb 2013
  • パッケージを有効化させる
$ brew link openssl --force
Linking /usr/local/Cellar/openssl/1.0.1h... 1139 symlinks created
  • brewでインストールしたopensslが有効になっていることを確認
$  which openssl            
/usr/local/bin/openssl  
$  openssl version
OpenSSL 1.0.1h 5 Jun 2014

2.rbenv(+ruby-buildプラグイン)を入れる

rbenvとは

[rbenv] https://github.com/sstephenson/rbenv

Rubyのバージョンを簡単に切り替えることができる。自身の目的によって複数のバージョンを使い分けるために利用する。

ruby-buildとは

[ruby-build] https://github.com/sstephenson/ruby-build

rbenvのプラグインで、rbenv install 〜というコマンドでRubyの異なるバージョンをコンパイルしてインストールする。

Install

  • gitを使ってrbenvを入れる
$ git clone https://github.com/sstephenson/rbenv.git ~/.rbenv
  • gitを使ってruby-buildプラグインを入れる
$ git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
  • 設定ファイルを記述する (.bash_profile, .zshrcなど)
~/.zshrc
export PATH="$HOME/.rbenv/bin:$PATH"
eval "$(rbenv init -)"
  • 設定ファイルの読み込み

source:設定変更したシェルスクリプトを現環境(現在のシェル)で実行するコマンド

$ source ~/.zshrc

3.Rubyをインストール

Install

  • インストールできるrubyのバージョンを確認 (2.0.0系)
$ rbenv install -l | grep 2.0.0
  2.0.0-dev
  2.0.0-p0
  2.0.0-p195
  2.0.0-p247
  2.0.0-p353
  2.0.0-p451
  2.0.0-p481
  2.0.0-preview1
  2.0.0-preview2
  2.0.0-rc1
  2.0.0-rc2
  maglev-2.0.0-dev
  rbx-2.0.0
  rbx-2.0.0-dev
  rbx-2.0.0-rc1
  • 2.0.0-p481をインストール
$ rbenv install 2.0.0-p481

(追記) OpenSSLを使う環境と、irbやpryで日本語入力できるようにreadlineを使う環境を指定してインストール

$ CONFIGURE_OPTS="--with-readline-dir=`brew --prefix readline` --with-openssl-dir=`brew --prefix openssl`" rbenv install(インストールバージョン)
  • rubyのバージョンを切り替える
$ rbenv global 2.0.0-p481
  • 切り替えたバージョンでもコマンドを使えるようにする
$ rbenv rehash
  • 正常にインストールできたことを確認(バージョンが表示される)
$ ruby -v
ruby 2.0.0p481 (2014-05-08 revision 45883) [x86_64-darwin12.5.0]
  • irbを起動してみる
$ irb
irb(main):001:0> puts "Hello, world!\n"
Hello, world!
=> nil
irb(main):002:0> 

4.Reference

[公式]
http://docs.ruby-lang.org/ja/2.1.0/library/openssl.html
http://docs.ruby-lang.org/ja/2.1.0/library/readline.html
http://docs.ruby-lang.org/ja/1.9.3/library/yaml.html
http://docs.ruby-lang.org/ja/1.9.3/library/zlib.html
https://github.com/sstephenson/rbenv
https://github.com/sstephenson/ruby-build

[その他]
http://qiita.com/emadurandal/items/a60886152a4c99ce1017
http://qiita.com/b4b4r07/items/6efebc2f3d1cbbd393fc
http://dqn.sakusakutto.jp/2014/02/rbenv_rehash_what_it_does.html
http://h2ham.net/ruby-rbenv
http://mukaer.com/archives/2012/03/09/rubyrvmgemrbenv/
http://news.mynavi.jp/articles/2013/09/02/homebrew/