前回yumでrubyをインストールしましたが、入るバージョンが古いので各種便利ライブラリが使えなかったり済ます。

今回はソースからインストールしてみます。

さらにyum管理外なので一般ユーザー(インストールに使用したユーザー)のみ対象でインストールしてみます。

という事で、作業はすべて一般ユーザーアカウントで行います。

ユーザーhomeにソース展開用のフォルダを作って、

rubyのダウンロードページ

https://www.ruby-lang.org/ja/downloads/

から最新のソースをゲットして展開します。

1
2
3
4
5
$ cd ~
$ mkdir src
src]$ wget http://cache.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0-p247.tar.gz
src]$ tar vzxf ruby-2.0.0-p247.tar.gz
src]$ cd ruby-2.0.0-p247

インストール先を指定してconfigureします。

1
2
3
ruby-2.0.0-p247]$ ./configure -prefix=$HOME/local
ruby-2.0.0-p247]$ make
ruby-2.0.0-p247]$ make install

そすっとこんな感じでインストールされます。

1
2
ruby-2.0.0-p247]$ ~/local/bin/ruby -v
ruby 2.0.0p247 (2013-06-27 revision 41674) [x86_64-linux]

ただし単にrubyとするとシステムにインストールされてるのを使うようになっているので、.bachrcを変更します。

1
2
3
4
5
6
7
8
9
ruby-2.0.0-p247]$ which ruby
/usr/bin/ruby
ruby-2.0.0-p247]$ vi ~/.bashrc

PATH=$HOME/local/bin:$PATH を追加

ruby-2.0.0-p247]$ source ~/.bashrc
ruby-2.0.0-p247]$ which ruby
~/local/bin/ruby

これでgemとかも一緒にインストールされている様子です。

1
2
ruby-2.0.0-p247]$ which gem
~/local/bin/gem

んで前回失敗したgemのインストールを実行

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
$ cd ~
~]$  gem install mechanize
Fetching: net-http-digest_auth-1.4.gem (100%)
Successfully installed net-http-digest_auth-1.4
Fetching: net-http-persistent-2.9.gem (100%)
Successfully installed net-http-persistent-2.9
Fetching: mime-types-1.25.gem (100%)
Successfully installed mime-types-1.25
Fetching: unf_ext-0.0.6.gem (100%)
Building native extensions.  This could take a while...
Successfully installed unf_ext-0.0.6
Fetching: unf-0.1.3.gem (100%)
Successfully installed unf-0.1.3
Fetching: domain_name-0.5.14.gem (100%)
Successfully installed domain_name-0.5.14
Fetching: http-cookie-1.0.2.gem (100%)
Successfully installed http-cookie-1.0.2
Fetching: mini_portile-0.5.2.gem (100%)
Successfully installed mini_portile-0.5.2
Fetching: nokogiri-1.6.0.gem (100%)
Building native extensions.  This could take a while...
Successfully installed nokogiri-1.6.0
Fetching: ntlm-http-0.1.1.gem (100%)
Successfully installed ntlm-http-0.1.1
Fetching: webrobots-0.1.1.gem (100%)
Successfully installed webrobots-0.1.1
Fetching: mechanize-2.7.2.gem (100%)
Successfully installed mechanize-2.7.2
Parsing documentation for net-http-digest_auth-1.4
Installing ri documentation for net-http-digest_auth-1.4
Parsing documentation for net-http-persistent-2.9
Installing ri documentation for net-http-persistent-2.9
Parsing documentation for mime-types-1.25
Installing ri documentation for mime-types-1.25
Parsing documentation for unf_ext-0.0.6
unable to convert "\xA8" from ASCII-8BIT to UTF-8 for lib/unf_ext.so, skipping
Installing ri documentation for unf_ext-0.0.6
Parsing documentation for unf-0.1.3
Installing ri documentation for unf-0.1.3
Parsing documentation for domain_name-0.5.14
Installing ri documentation for domain_name-0.5.14
Parsing documentation for http-cookie-1.0.2
Installing ri documentation for http-cookie-1.0.2
Parsing documentation for mini_portile-0.5.2
Installing ri documentation for mini_portile-0.5.2
Parsing documentation for nokogiri-1.6.0
unable to convert "\x81" from ASCII-8BIT to UTF-8 for lib/nokogiri/nokogiri.so, skipping
Installing ri documentation for nokogiri-1.6.0
Parsing documentation for ntlm-http-0.1.1
Installing ri documentation for ntlm-http-0.1.1
Parsing documentation for webrobots-0.1.1
Installing ri documentation for webrobots-0.1.1
Parsing documentation for mechanize-2.7.2
Installing ri documentation for mechanize-2.7.2
12 gems installed
 ~]$

なんか色々お仲間になっちゃってるけど、キタコレ。

gemは ~/local/lib/ruby/gems/2.0.0/gems/ に入るみたい。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
~]$ ls ~/local/lib/ruby/gems/2.0.0/gems/
domain_name-0.5.14
mechanize-2.7.2
mini_portile-0.5.2
net-http-persistent-2.9
ntlm-http-0.1.1
rdoc-4.0.0
unf-0.1.3
webrobots-0.1.1
http-cookie-1.0.2
mime-types-1.25
net-http-digest_auth-1.4
nokogiri-1.6.0
rake-0.9.6
test-unit-2.0.0.0
unf_ext-0.0.6