そうだ、Rubyをやろう(7日目)
OS X 10.9.2, Ruby 2.1.1, rbenv
※諸事情により、Homebrewを使わずに、主にMacPortsとgitを使って環境構築します。
rbenvというものがあるらしい
https://www.ruby-lang.org/ja/installation/#rbenv
なるほど。このrbenvというやつを使えば、複数のバージョンのRubyをインストールして、どのバージョンのRubyで実行するのかを簡単なコマンドで切り替えられると。
こいつは便利そうだ。
・gitから落としてくる
$ git clone https://github.com/sstephenson/rbenv.git ~/.rbenv
・.bash_profileに設定を追加する
$ vim ~/.bash_profile # 以下2行を追記 PATH=$HOME/.rbenv/bin:$PATH eval "$(rbenv init -)" $ source ~/.bash_profile
ruby-buildというものがあるらしい
https://github.com/sstephenson/ruby-build#readme
これはrbenvのプラグインで、異なるバージョンのRubyをコンパイルし、インストールするのに使えるそうだ。こいつも一緒にインストールしておく。
$ git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
Rubyのコンパイルに必要なライブラリ類をMacPortsでインストールしておく
$ sudo port selfupdate $ sudo port install openssl readline libiconv
※関連して、つい先日(4/8頃)OpenSSLの脆弱性のアラートが上がったので、バージョンに注意。
詳細については、「OpenSSL Heartbleed」で検索されたし。
$ openssl version OpenSSL 1.0.1g 7 Apr 2014
もし、バージョンが1.0.1 〜 1.0.1fだった場合、脆弱性があるので、アップデートする。
$ sudo port selfupdate $ sudo port upgrade openssl
rbenvの使い方
・インストール可能な一覧セットを得る
$ rbenv install -l Available versions: 1.8.6-p383 1.8.6-p420 1.8.7-p249 1.8.7-p302 1.8.7-p334 1.8.7-p352 1.8.7-p357 (... 省略)
・試しにRuby 2.1.0と2.1.1をインストールしてみる
$ export CONFIGURE_OPTS="--with-openssl-dir=/opt/local --with-readline-dir=/opt/local --with-iconv-dir=/opt/local" $ rbenv install 2.1.0 $ rbenv rehash $ rbenv install 2.1.1 $ rbenv rehash $ rbenv global 2.1.0 $ ruby -v ruby 2.1.0p0 (2013-12-25 revision 44422) [x86_64-darwin13.0] $ rbenv global 2.1.1 $ ruby -v ruby 2.1.1p76 (2014-02-24 revision 45161) [x86_64-darwin13.0]
素晴らしいじゃないか!
rootアカウントでシステムにインストールするのと違って、同じ端末を使用する開発者たちが、それぞれ別々に自分のRuby環境を構築できるという点がお気に入り。これでまともなRuby開発環境ができた・・・と思う。