LoginSignup
18
18

More than 5 years have passed since last update.

自分でコンパイルしたRubyをrbenvで管理する(Mac OS X, Ubuntu)

Last updated at Posted at 2013-02-24

通常はruby-buildもセットで使えば楽でいいのだけど、例えばruby2.0出た! 入れてみよう! あ、ruby-buildがまだだ・・・。という理由ですぐに試せないという人が居たとすると悲しいので、自分でやってみた手順をメモしました。

準備

まず、rbenvを使えるようにします。
どうせ使うので、ruby-buildも入れておきます。

Ubuntu

apt-getでrbenvインストール可能ですが、gitで入れたほうが良いです。

$ sudo apt-get instlal git
$ git clone https://github.com/sstephenson/rbenv.git ~/.rbenv
$ git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build

環境変数PATHに, ~/.rbenv/binを追加します。
そして、~/.bashrc とか ~/.zshrcに

eval "$(rbenv init -)"

を追記しておきます。

rubyのビルドに必要なパッケージを入れておきます。

$ sudo apt-get install libssl-dev libxml2-dev libxslt1-dev libyaml-dev libreadline-dev zlib1g-dev

このくらい入れとけば大丈夫です。

新しいバージョンのrubyが出た時は、以下のコマンドでruby-buildを更新するとインストール出来るようになっているかもしれません。

$ cd ~/.rbenv/plugins/ruby-build
$ git pull origin master

Mac OS X

Homebrewは導入済みとします。

$ brew install rbenv ruby-build

Mac10.9以降の場合、特に追加でパッケージを入れておかなくてもrubyビルド可能です。

新しいバージョンのrubyが出たら以下を実行すればインストール出来るようになっているかもしれません。

$ brew update
$ brew upgrade ruby-build

本題

ここから本題のruby-buildを使わないインストール手順です。
UbuntuもMacも同じ手順でいけるはず。

$ wget ftp://ftp.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0-p0.tar.gz
$ tar xzvf ruby-2.0.0-p0.tar.gz
$ cd ruby-2.0.0-p0
$ ./configure --prefix=$HOME/.rbenv/versions/2.0.0-p0
$ make
$ make install

※hoge にはユーザー名を

これで $HOME/.rbenv/versions 以下にruby2.0がインストールされたはず。

$ rbenv versions
  system
  1.9.2-p290
  1.9.3-p194
  1.9.3-p327
* 1.9.3-p374 (set by /Users/hoge/.rbenv/version)
  2.0.0-p0
  2.0.0-preview1
  2.0.0-rc2

$ rbenv global 2.0.0-p0
$ rbenv rehash
$ ruby -v
ruby 2.0.0p0 (2013-02-24) [x86_64-darwin12.2.1]

これで自分でビルドしたRubyがrbenvで管理出来る状態になったと思います。

あとは、私がRubyをインストールしたとき確認すること - 絶対R領域を参考に、ハマリ易そうなところが大丈夫か見ておきます。

$ irb
irb(main):001:0> require 'openssl'
true
irb(main):002:0> require 'zlib'
true
irb(main):003:0> require 'psych'
true

良さそうですね!

18
18
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
18
18