6
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

rbenvでruby2.2.1インストールの手順

Posted at

はじめに

rubyを触りたいけど、バージョン別で触りたいなと思いrbenvを導入することにした。
以前なんとなく入れてみたことあるけど、手順とか覚えてないから
備忘録取りながらやってみる。

[OS]

  • Ubuntu14.10

[インストール対象]

  • rbenv : 0.4.0-146-g7ad01b2
  • ruby : 2.2.1

※1 gccやmake,gitなど必要なものはあらかじめインストールされているものとする
 (なんかつまづいたらググって解決!)
※2 libffi-dev をapt-get(aptitude)でインストールしておく
 (でないとrubyインストールできない)

rbenvインストール

rubyのバージョンを切り替えるのに使う

  1. まずはrbenvのソースをcloneする
    git clone git://github.com/sstephenson/rbenv.git ~/.rbenv

  2. .zshrcに以下を追加
    eval "$(rbenv init -)"
    他のサーバとかでも共通で使えるようにしたいから、やっぱり以下に変更

export RUBY_ROOT="${HOME}/.rbenv"
if [ -d "${RUBY_ROOT}" ]; then
    PATH=${RUBY_ROOT}/bin:$PATH
    eval "$(rbenv init -)"
fi```

3. .zshrcを保存したら再読み込みして確認
`rbenv --version`
バージョンが表示されれば成功!

# ruby-buildインストール
rubyのインストールを簡単にしてくれる

1. ruby-buildのソースをcloneする
`git clone git://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build`

2. 動作確認
`rbenv install --list`
いっぱいバージョン情報が表示されれば成功!

# 2.2.1-type.patch を取得する
`git clone https://gist.github.com/liamdawson/5b20f45ae59755dcbc9d`

# ruby2.2.1 インストール
`rbenv install --patch 2.2.1 < [downloaded patch dir]/2.2.1-typo.patch`

# インストールできたか確認
`rbenv versions`
対象のバージョンがあれば成功

# 使用するrubyを設定する
```rbenv global 2.2.1
rbevn rehash```

# rubyが設定されているか確認
`rbenv version`
対象のバージョンが表示されれば成功

[念のため以下も試す]
`ruby --version`
対象のバージョンが表示されれば成功

あとはrubyを楽しむだけ!w

*******

# やってて困ったこと
## その一
こんなエラーが出た。。。
>ubuS14 developer% rbenv install 2.2.1                                                                                           [~]
 Downloading ruby-2.2.1.tar.gz...
-> http://dqw8nmjcqpjn7.cloudfront.net/5a4de38068eca8919cb087d338c0c2e3d72c9382c804fb27ab746e6c7819ab28
 Installing ruby-2.2.1...

> BUILD FAILED (Ubuntu 14.10 using ruby-build 20150413-11-g89a23a4)

>Inspect or clean up the working tree at /tmp/ruby-build.20150430161255.4515
Results logged to /tmp/ruby-build.20150430161255.4515.log

>Last 10 log lines:
./libffi-3.2.1/.libs/libffi.a: error adding symbols: 不正な値です
collect2: error: ld returned 1 exit status
Makefile:325: recipe for target '../../.ext/x86_64-linux/fiddle.so' failed
make[2]: *** [../../.ext/x86_64-linux/fiddle.so] Error 1
make[2]: Leaving directory '/tmp/ruby-build.20150430161255.4515/ruby-2.2.1/ext/fiddle'
exts.mk:177: recipe for target 'ext/fiddle/all' failed
make[1]: *** [ext/fiddle/all] Error 2
make[1]: Leaving directory '/tmp/ruby-build.20150430161255.4515/ruby-2.2.1'
uncommon.mk:189: recipe for target 'build-ext' failed
make: *** [build-ext] Error 2

単純に libffi-dev というのを入れてないだけっぽい。。
ruby-buildで使っているみたいですね。([build-failure-of-fiddle-with-ruby-220](https://github.com/sstephenson/ruby-build/wiki#build-failure-of-fiddle-with-ruby-220))
以下のとこで簡単に説明してました
http://spring-mt.tumblr.com/post/26490987325/ruby-centos-6-2
> 外部関数インターフェイスのうち、マシンに依存する最も低いレイヤを提供するライブラリ

ふーん。。。
じ、時間できたらちゃんと調べよっとw

## その二

こんなエラーがでた

> ubuS14 developer% rbenv install 2.2.1                                                                                                   [~
Downloading ruby-2.2.1.tar.gz...
-> http://dqw8nmjcqpjn7.cloudfront.net/5a4de38068eca8919cb087d338c0c2e3d72c9382c804fb27ab746e6c7819ab28
Installing ruby-2.2.1...

> BUILD FAILED (Ubuntu 14.10 using ruby-build 20150413-11-g89a23a4)

> Inspect or clean up the working tree at /tmp/ruby-build.20150430165744.30597
Results logged to /tmp/ruby-build.20150430165744.30597.log

> Last 10 log lines:
                              rake 10.4.2
                              rdoc 4.2.0
./tool/rbinstall.rb:714:in `rescue in block in <main>': uninitialized constant LoadErroe (NameError)
	from ./tool/rbinstall.rb:712:in `block in <main>'
	from ./tool/rbinstall.rb:757:in `call'
	from ./tool/rbinstall.rb:757:in `block in <main>'
	from ./tool/rbinstall.rb:754:in `each'
	from ./tool/rbinstall.rb:754:in `<main>'
uncommon.mk:246: recipe for target 'do-install-all' failed
make: *** [do-install-all] Error 1

いろいろ調べてわかったこと
[rubyコンパイル時にエラー](http://d.hatena.ne.jp/the_yokochi/20150325)

ちゃんとエラーメッセージを読んでなかったので理由が分かるまでに結構時間かかった。。。the_yokochiさんありがとう!

ちゃんとエラーメッセージを見なさいって再確認させてもらいました!
~~(タイポとは。。ロードエッロエってなんだよちくしょう!)~~

手順で使ってるパッチも見つけることができましたw
パッチなしでも直接書き換えればOKみたいです。


# 参考URL(まとめ)

* http://tsuchikazu.net/linux_ruby_on_rails_install/
* http://d.hatena.ne.jp/the_yokochi/20150325
* https://github.com/sstephenson/ruby-build/issues/728
* https://github.com/sstephenson/ruby-build/wiki
* http://spring-mt.tumblr.com/post/26490987325/ruby-centos-6-2
6
7
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
6
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?