rbenv のインストール
複数バージョンのRubyの使い分けを支援する rbenv のインストール。 sstephenson/rbenv · GitHub
ここでは Linux に一般アカウント(bashを利用する環境)で導入。
事前準備
事前に以下のパッケージは導入しておく。
- git
- gcc
- make
- libssl-dev (CentOS6 の場合は openssl-devel/openssl-static)
インストール
bash # rbenv インストール git clone https://github.com/sstephenson/rbenv.git ~/.rbenv echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile echo 'eval "$(rbenv init -)"' >> ~/.bash_profile bash -l # ruby-build をインストール git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build rbenv install -l # インストール可能なバージョンを確認 # Ruby (2.0.0-p247) を ndenv を利用してインストール rbenv install 2.0.0-p247 rbenv global 2.0.0-p247 rbenv rehash # 確認 ruby -v
他のバージョンのrubyをrbenv経由でインストール
rbenv install -l # インストール可能なバージョンを確認 rbenv install 2.1.3 rbenv rehash # 利用する ruby を 2.1.3 へ切り替える rbenv global 2.1.3 rbenv rehash # 確認 ruby -v rbenv versions
gemパッケージのインストール
gem install HOGE
rbenv rehash
gemのその他のコマンド
# インストール済みのgemパッケージを表示 gem list # gemパッケージを削除 gem uninstall HOGE rbenv rehash
備考
コンパイル中に発生するエラーへの対応
コンパイル中に以下のようなエラーが発生することがある
rbenv install 1.9.2-p326 Downloading yaml-0.1.6.tar.gz... -> http://dqw8nmjcqpjn7.cloudfront.net/7da6971b4bd08a986dd2a61353bc422362bd0edcc67d7ebaac68c95f74182749 Installing yaml-0.1.6... Installed yaml-0.1.6 to /home/techconf/.rbenv/versions/1.9.2-p326 Checking out http://svn.ruby-lang.org/repos/ruby/branches/ruby_1_9_2... Installing ruby-1.9.2-p326... BUILD FAILED Inspect or clean up the working tree at /tmp/ruby-build.20140710140825.19636 Results logged to /tmp/ruby-build.20140710140825.19636.log Last 10 log lines: ossl_pkey_ec.c: In function ‘ossl_ec_group_initialize’: ossl_pkey_ec.c:765: warning: assignment makes pointer from integer without a cast ossl_pkey_ec.c:819: error: ‘EC_GROUP_new_curve_GF2m’ undeclared (first use in this function) ossl_pkey_ec.c:819: error: (Each undeclared identifier is reported only once ossl_pkey_ec.c:819: error: for each function it appears in.) ossl_pkey_ec.c: In function ‘ossl_ec_group_set_seed’: ossl_pkey_ec.c:1114: warning: comparison between signed and unsigned integer expressions make[1]: *** [ossl_pkey_ec.o] Error 1 make[1]: Leaving directory `/tmp/ruby-build.20140710140825.19636/ruby-1.9.2-p326/ext/openssl' make: *** [mkmain.sh] Error 1
- 以下のページを参考に、パッチを適用してコンパイル。 http://blog.katashiyo515.com/entry/2014/03/30/213331 http://qiita.com/kakipo/items/482b32b0c2ec0f9d113c
- 例えば ここの例に従うと、こんな感じ。
curl -fsSL https://github.com/ruby/ruby/commit/1e7a929c1d44d7a368fbe379211183ac6c972920.patch | \ rbenv install --patch 1.9.3-p484