トップページ -> 情報工学,情報スキルの教材 -<> Ruby プログラミング -> Linux で rvm を用いて Ruby をインストール
[サイトマップへ]  

Linux で rvm を用いて Ruby をインストール

この Web ページでは rvm を用いた ruby のインストール手順を 図解で説明します.


事前準備

  1. 更新可能な全パッケージを更新する操作を行っておく.

    Ubuntu の場合の操作手順(例)

    sudo apt-get update 
    sudo apt-get upgrade
    

    Fedora の場合の操作手順(例)

    yum check-update
    yum update
    

  2. curl のインストールが済んでいること

    Ubuntu の場合の操作手順(例)

    sudo apt-get install curl
    

  3. rvm を用いてRuby 処理系をインストールするのに必要なパッケージ のインストール

    Ubuntu の場合の操作手順(例)

        sudo apt-get install build-essential openssl libreadline6 libreadline6-dev curl git-core zlib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-0 libsqlite3-dev sqlite libxml2-dev libxslt-dev autoconf libc6-dev ncurses-dev automake libtool bison subversion
    

  4. (オプション)

    Ruby は,あとで rvm を使ってインストールするのですが、必要な場合は、全ユーザが使えるものをパッケージを使ってインストールしておきます。

    Ubuntu の場合の操作手順(例)

    sudo apt-get -yV install ruby-full
    sudo apt-get -yV install ruby1.9.1-full
    sudo apt-get -yV install rubygems
    
    sudo gem install rubygems-update
    sudo gem1.9.1 install rubygems-update
    sudo /var/lib/gems/1.8/bin/update_rubygems
    sudo /var/lib/gems/1.9.1/bin/update_rubygems
    # 上記のコマンドにより、gem は /usr/lib/ruby/gems 下に入るように設定される
    
    sudo apt-get -yV install ruby-dev
    sudo apt-get -yV install libruby
    sudo apt-get -yV install libruby-extras
    sudo apt-get -yV install libpdf-writer-ruby
    sudo apt-get -yV install libpdf-writer-ruby-doc
    sudo apt-get -yV install erubis
    sudo apt-get -yV install erubis-doc
    sudo apt-get -yV install liberubis-ruby
    sudo apt-get -yV install eruby
    sudo apt-get -yV install libapache2-mod-ruby
    sudo apt-get -yV install libprogressbar-ruby
    
    sudo apt-get -yV install rrdtool librrd-ruby
    sudo apt-get -yV install ruby-gnome2
    sudo apt-get -yV install ruby-gnome2-dev
    sudo apt-get -yV install libqt4-ruby
    sudo apt-get -yV install libfacets-ruby
    sudo apt-get -yV install libfacets-ruby-doc
    sudo apt-get -yV install librmagick-ruby
    sudo apt-get -yV install librmagick-ruby-doc
    sudo apt-get -yV install libopenssl-ruby
    sudo apt-get -yV install libxml2-dev
    sudo apt-get -yV install libxslt-dev
    sudo apt-get -yV install libwww-mechanize-ruby1.8
    sudo apt-get -yV install libwww-mechanize-ruby1.9.1
    sudo apt-get -yV install libmysql-ruby
    sudo apt-get -yV install libsqlite3-ruby
    sudo apt-get -yV install libwirble-ruby
    sudo apt-get -yV install libwirble-ruby-doc
    sudo apt-get -yV install libgruff-ruby
    sudo apt-get -yV install libgruff-ruby-doc
    
    sudo apt-get -yV install  chasen
    sudo apt-get -yV install  libchasen-dev
    sudo apt-get -yV install  chasen-dictutils
    sudo apt-get -yV install  libtext-chasen-perl
    sudo apt-get -yV install  naist-jdic-utf8
    sudo apt-get -yV install  mecab
    sudo apt-get -yV install  mecab-utils
    sudo apt-get -yV install  mecab-naist-jdic
    sudo apt-get -yV install  libmecab-dev
    sudo apt-get -yV install  libmecab-ruby
    sudo apt-get -yV install  namazu2
    sudo apt-get -yV install  namazu2-index-tools
    sudo apt-get -yV install  libnmz7-dev
    

rvm のインストール

特別な設定をしない限り,ホームディレクトリの下にインストールされます.

  1. rvm のインストール

    ◆ 各ユーザごとに独立して ruby を持つ場合

    bash < <(curl -s -B https://rvm.beginrescueend.com/install/rvm )
    

    Ubuntu の場合の実行結果(例)

    ◆ 全ユーザで ruby を共有する場合

        sudo bash < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer )
    

  2. .bashrc の編集

    ◆ 各ユーザごとに独立して ruby を持つ場合

    .bashrc に次の1行を書き加える.

    source $HOME/.rvm/scripts/rvm
    

    ◆ 全ユーザで ruby を共有する場合

    .bashrc に次の1行を書き加える.

        source /usr/local/rvm/scripts/rvm
    

rvm を用いた ruby のインストール

ruby も,特別な設定をしない限り,ホームディレクトリの下にインストールされます.

  1. rvm を最新バージョンに更新

    rvm get head
    rvm reload
    

  2. 名前のリストの表示

    rvm list known
    

  3. 使用可能なコマンドの表示

    rvm help
    

  4. ruby のインストール操作

    ruby-1.9.2-head の場合

    rvm install ruby-1.9.2-head
    

    ruby-1.8.7-head の場合

    rvm install ruby-1.8.7-head
    

    jruby-head の場合

    まず、Oracle Java を使うように設定.Ubuntu での操作手順(例)を以下に示す.

    ※ 詳しくは 「Java のインストール」の Web ページを見てください.

    sudo apt-get update
    sudo apt-get install sun-java6-jdk sun-java6-plugin
    sudo update-alternatives --config java
    

    rvm install ruby-1.9.2-head
    

rvm を使ってみる


RubyGems の更新

Ubuntu の場合の操作手順(例)

下記のコマンドにより、RubyGems が更新される。 gem は /usr/lib/ruby/gems 下に入るように設定される

gem install rubygems-update
/var/lib/gems/1.8/bin/update_rubygems

rspec, rspec-rails, git を gem を用いてインストール

  1. 端末を起動

  2. Ruby の gem の更新

    先に Ruby の gem ファイルを最新のものに更新したいので、端末で 「sudo gem update」を実行します.

    sudo gem update
    

  3. sudo gem install rspec」, 「sudo gem install rspec-rails」, 「sudo gem install git」の実行

    sudo gem install rspec
    sudo gem install rspec-rails
    sudo gem install git
    

  4. インストールできたかは,「gem list」の実行で確認できる.実行例は次の通り.

    gem list
    

Sinatra を gem を用いてインストール

Sinatra については別の Web ページで説明しています。

  1. 端末を起動

  2. sudo gem update」の実行

    先に Ruby の gem ファイルを最新のものに更新したいので、端末で 「sudo gem update」を実行します.

    sudo gem update
    

  3. sudo gem install sinatra」の実行
    sudo gem install sinatra
    

    数分待つ.途中で止まっているように見えるかも知れないが待つこと.

  4. インストール終了の確認

  5. インストールできたかは,「gem list」の実行で確認できる.実行例は次の通り.

Ruby on Rails を gem を用いてインストール

  1. 端末を起動

  2. Ruby の gem の更新

    先に Ruby の gem ファイルを最新のものに更新したいので、端末で 「sudo gem update」を実行します.

    sudo gem update
    

    ■ ruby-1.9.2-head をインストールした場合の実行例

  3. sudo gem install pkg-config」と「sudo gem install rails」の実行

    sudo gem install pkg-config
    sudo gem install rails
    

    ■ ruby-1.9.2-head をインストールした場合の実行例

    数分待つ.途中で止まっているように見えるかも知れないが待つこと.

  4. インストール終了の確認

  5. インストールできたかは,「gem list」の実行で確認できる.実行例は次の通り.

    gem list
    

    ■ ruby-1.9.2-head をインストールした場合の実行例

  6. テスト実行

    ActiveRecord を使う場合

    rails new hoge -J -d sqlite3 
    

    cd hoge
    bundle install
    rails g rspec:install
    rails g scaffold hogeobj id:primary_key value:string
    rake db:migrate
    rake db:setup
    rails server
    

    http://api.rubyonrails.org/classes/ActiveRecord/ConnectionAdapters/TableDefinition.html

    ※ :primary_key, :string, :text, :integer, :float, :decimal, :datetime, :timestamp, :time, :date, :binary, :boolean


Ruby Facets を gem を用いてインストール

  1. 端末を起動

  2. Ruby の gem の更新

    先に Ruby の gem ファイルを最新のものに更新したいので、端末で 「sudo gem update」を実行します.

    sudo gem update 
    

    ■ ruby-1.9.2-head をインストールした場合の実行例

    数分待つ.途中で止まっているように見えるかも知れないが待つこと.

  3. インストール終了の確認

  4. sudo gem install facets」の実行

    sudo gem install facets
    

    ■ ruby-1.9.2-head をインストールした場合の実行例

  5. インストールできたかは,「gem list」の実行で確認できる.実行例は次の通り.

    gem list
    

    ■ ruby-1.9.2-head をインストールした場合の実行例

  6. テスト実行

    facets を試しに使ってみます.

    irb
    require 'rubygems'
    require 'facets'
    p Time.elapse { sleep 0.12345 }
    


Ruby 用の RMagick を gem を用いてインストール

RMagick とは ImageMagick 画像処理ライブラリ等を Ruby から呼び出せるようにできるインターフェースの機能をもったソフトウエアです.

RMagick の使い方については別の Web ページで詳しく説明しています。

RMagick の使い方については別の Web ページで詳しく説明しています。

  1. 端末を起動

  2. ImageMagick と GraphicsMagick のインストール

    ■ Ubuntu の場合の操作手順(例)

    sudo apt-get -yV install  imagemagick
    sudo apt-get -yV install  libmagickcore3
    sudo apt-get -yV install  libmagickwand3
    sudo apt-get -yV install  graphicsmagick
    sudo apt-get -yV install  libgraphicsmagick3
    

  3. (オプション) ImageMagick のビルドとインストール

    cd /tmp
    wget ftp://ftp.kddlabs.co.jp/graphics/ImageMagick/ImageMagick-6.7.0-6.tar.bz2
    tar -xvjof ImageMagick-6.7.0-6.tar.bz2
    cd ImageMagick-6.7.0-6
    ./configure --without-perl
    make
    sudo make install
    

  4. (オプション) GraphicsMagick のビルドとインストール

    ◆ 操作手順の例

    1.3 系列にはバグがあった (2011/03 時点)ので 1.2 系列をインストール

    cd /tmp
    wget http://sourceforge.net/projects/graphicsmagick/files/graphicsmagick/1.2.10/GraphicsMagick-1.2.10.tar.bz2
    tar -xvjof GraphicsMagick-1.2.10.tar.bz2
    cd GraphicsMagick-1.2.10
    ./configure --without-perl
    make
    sudo make install
    

  5. Ruby の gem の更新

    先に Ruby の gem ファイルを最新のものに更新したいので、端末で 「sudo gem update」を実行します.

    sudo gem update 
    

    ■ ruby-1.9.2-head をインストールした場合の実行例

    数分待つ.途中で止まっているように見えるかも知れないが待つこと.

  6. RMagick のインストール
    sudo gem install rmagick
    

    ■ ruby-1.9.2-head をインストールした場合の実行例

  7. インストールできたかは,「gem list」の実行で確認できる.

  8. テスト実行

    RMagick を試しに使ってみます.

    cd /tmp
    wget https://www.kunihikokaneko.com/free/stand/lena_std.jpg
    irb
    require 'rubygems'
    require 'RMagick'
    rgb = Magick::ImageList.new("lena_std.jpg")
    rgb.public_methods
    rgb.write("lena_std.png")
    rgb.display
    

    ■ Ubuntu の場合の実行結果例

    画像は「q」キーで閉じる


Gruff を gem を用いてインストール

Gruff の使い方については別の Web ページで詳しく説明しています。

  1. 端末を起動

  2. Ruby の gem の更新

    先に Ruby の gem ファイルを最新のものに更新したいので、端末で 「sudo gem update」を実行します.

    sudo gem update 
    

    ■ ruby-1.9.2-head をインストールした場合の実行例

    数分待つ.途中で止まっているように見えるかも知れないが待つこと.

  3. インストール終了の確認

  4. sudo gem install gruff」の実行

    sudo gem install gruff
    

    ■ ruby-1.9.2-head をインストールした場合の実行例

  5. インストールできたかは,「gem list」の実行で確認できる.

    gem list
    

  6. テスト実行

    gruff がインストールされるので,試しに使ってみます.

    irb
    require 'rubygems'
    require 'RMagick'
    require 'gruff'
    
    g = Gruff::Line.new
    g.title = "Sample Graph" 
    
    g.data("Line 1", [1, 3, 2, 4, 5])
    g.data("Line 2", [3, 3, 2, 2, 4])
    g.data("Line 3", [4, 4, 3, 3, 6])
    g.labels = {0 => '2009', 2 => '2010', 4 => '2011'}
    
    g.write('graph01.png')
    
    rgb = Magick::ImageList.new("graph01.png")
    rgb.display
    

Ruby GNOME2 書きかけ


Ruby FLTK2 書きかけ


mecab と senna と mecab-ruby パッケージのインストール

mecab-ruby の使い方については別の Web ページで詳しく説明しています。

◆ mecab と mecab-ruby パッケージのインストール(Ubuntu の場合のインストール手順例)

cd /tmp
wget http://sourceforge.net/projects/mecab/files/mecab-ruby/0.98/mecab-ruby-0.98.tar.gz
tar -xvzof mecab-ruby-0.98.tar.gz
cd mecab-ruby-0.98
ruby extconf.rb
make 
sudo make install

◆ senna のインストール(Ubuntu の場合のインストール手順例)

rm -rf senna-1.1.5
tar -xvzof senna-1.1.5.tar.gz
cd senna-1.1.5
./configure --with-mecab --with-encoding=utf8
make 
make install
cd bindings/ruby
ruby extconf.rb
make
make install

  • mecab に関するテスト実行

    irb -Ku
    require 'rubygems'
    require 'MeCab'
    
    c = MeCab::Tagger.new()
    parsed = c.parse("I have a pen")
    

  • senna に関するテスト実行

    irb
    require 'senna'
    
    index = Senna::Index::create('index', 0, Senna::INDEX_NORMALIZE | Senna::INDEX_NGRAM, 0, Senna::ENC_UTF8 ) 
    key = "1"
    value = "これはペンです"
    index.upd(key, nil, value)
    key = "2"
    value = "これはケーキです"
    index.upd(key, nil, value)
    
    index.close
    
    index = Senna::Index::open('index') 
    
    p index.select('これは') 
    p index.select('これは').nhits  
    index.select('これは').each do |key, score|
      p key
      p score
    end
    
    index.close
    
    

    mechanize のインストール

    mechanize の使い方については別の Web ページで詳しく説明しています。

    1. 端末を起動

    2. Ruby の gem の更新

      先に Ruby の gem ファイルを最新のものに更新したいので、端末で 「sudo gem update」を実行します.

      sudo gem update
      

    3. 前提ソフトウエアのインストール

      ◆ Ubuntu での操作手順例

      cd /tmp
      sudo apt-get install libxslt-dev
      sudo apt-get install libwww-mechanize-ruby1.8
      sudo apt-get install libwww-mechanize-ruby1.9.1
      

    4. sudo gem install mechanize」の実行

      sudo gem install mechanize
      

      ◆ Ubuntu での実行結果の例

    5. インストールできたかは,「gem list」の実行で確認できる.

    6. テスト実行

      試しに使ってみます.

      require 'rubygems' require 'mechanize' agent = Mechanize::Mechanize.new page = agent.get("http://www.google.com"); # 「p page」は,ページ表示 # p page # フォーム page.forms[0].q = 'Eclipse インストール' search_results = agent.submit(page.forms[0]) puts search_results.body


    progressbar, fastercsv, yaml2csv, json, spreadsheet, RubyInline, rjb, ruby-debug パッケージを gem を用いてインストール

    1. 端末を起動

    2. Ruby の gem の更新

      先に Ruby の gem ファイルを最新のものに更新したいので、端末で 「sudo gem update」を実行します.

      sudo gem update 
      

      ■ ruby-1.9.2-head をインストールした場合の実行例

      数分待つ.途中で止まっているように見えるかも知れないが待つこと.

    3. インストール終了の確認

    4. gem を用いてインストール

      sudo gem install progressbar
      sudo gem install fastercsv
      sudo gem install yaml2csv
      sudo gem install json
      sudo gem install multi_json
      sudo gem install bcrypt-ruby
      sudo gem install spreadsheet
      sudo gem install RubyInline
      sudo gem install rjb
      sudo gem install ruby-debug
      

    ◆ yaml, json を試してみる.

    t = [
    {:key => 1, :value => { :year => 2011, :month => 10, :day => 26, :customer_name => 'kaneko', :product_name => 'orange A', :unit_price => 1.2, :qty => 10, :created_at => Time.now } }, 
    {:key => 2, :value => { :year => 2011, :month => 10, :day => 26, :customer_name => 'kaneko', :product_name => 'Apple M',  :unit_price => 2.5, :qty => 2,  :created_at => Time.now } }, 
    {:key => 3, :value => { :year => 2011, :month => 10, :day => 27, :customer_name => 'miyamo', :product_name => 'orange B', :unit_price => 1.2, :qty => 8,  :created_at => Time.now } }, 
    {:key => 4, :value => { :year => 2011, :month => 10, :day => 27, :customer_name => 'moyamo', :product_name => 'Apple L',  :unit_price => 3,   :qty => 3,  :created_at => Time.now } } ] 
    
    require 'rubygemsyamlto_yamlt
    print y
    YAML.loadrequire( y )
    
    require 'jsonJSON.dump( t )
    print y
    JSON.load( j )
    
    

    書きかけ

    require 'spreadsheet'
    book = Spreadsheet.open('hoge.xls'
    )
    sheet = book.worksheet(0)
    sheet[1,0] = 100
    sheet[2,0] = 100
    sheet[3,0] = 100
    book.write('hoge.xls')
    
    require 'fastercsv'
    FasterCSV.open('hoge.csv', 'w') do |f|
        f << t
    end
    

    ◆ RubyInline (書きかけ)

    char, char*, unsigned int, int, unsigned long, long などが使えます. 

    irb
    require 'rubygems'
    require 'rubyInline'
    
    class Hoge
      inline do |builder|
        builder.include ''
        builder.c <<
        -EOF
        int hello( char* message ) {
          printf( "hello %s\n", msssage ); 
        }
        EOF
      end
    end
    
    hoge = Hoge.new; 
    hoge.hello( "hoge hoge" );
    

    ◆ ruby-rdebug を使ってみる

    使用例の1

    irb
    require 'rubygems'
    require 'ruby-debug'
    debugger
    

    使用例の2

    ruby -rdebug hoge.rb 
    

    これで,list, help, break, cont, step, p, where, up, down などのコマンドを使うことができるようになる。


    Ruby の gem で MySQL パッケージ, SQLite3 パッケージをインストール

    MySQL パッケージ

    1. 端末を起動

    2. Ruby の gem の更新

      先に Ruby の gem ファイルを最新のものに更新したいので、端末で 「sudo gem update」を実行します.

      sudo gem update
      

    3. MySQL のインストール が済んでいること

      手っ取り早くインストールしたいときは,次のような手順になります.但し セキュリティの設定をしない限り, MySQL サーバを外部に公開してはいけない

      ■ Ubuntu の場合の操作手順(例)

      sudo apt-get install mysql-client
      sudo apt-get install libmysql-ruby
      

      ■ Fedora の場合の操作手順(例)

      yum install mysql-devel
      

    4. sudo gem install mysql」の実行

      これは,Ruby 用の MySQL パッケージをインストールしたいときの操作

      sudo gem install mysql
      

      ■ rvm の ruby-1.9.2-head での実行例

    5. インストール終了の確認

      エラーメッセージが出ていないことを確認する.

    pg パッケージ

    1. 端末を起動

    2. Ruby の gem の更新

      先に Ruby の gem ファイルを最新のものに更新したいので、端末で 「sudo gem update」を実行します.

      sudo gem update
      

    3. PostgreSQL のインストール が済んでいること

      手っ取り早くインストールしたいときは,次のような手順になります.但し セキュリティの設定をしない限り, PostgreSQL サーバを外部に公開してはいけない

      ■ Ubuntu の場合の操作手順(例)

      sudo apt-get install postgresql-8.4
      

    4. sudo gem install pg」の実行

      これは,Ruby 用の pg パッケージをインストールしたいときの操作

      sudo gem install pg
      

      ■ ruby-1.8.7 での実行例

    5. インストール終了の確認

      エラーメッセージが出ていないことを確認する.

    SQLite3 パッケージ

    使い方の詳細は、別の Web ページ で説明しています.

    1. sudo gem install sqlite3-ruby」の実行

      これは,Ruby 用の SQlite 3 パッケージをインストールしたいときの操作

      sudo gem install sqlite3-ruby
      

      ■ ruby-1.9.2-head をインストールした場合の実行例

    2. インストールできたかは,「gem list」の実行で確認できる.実行例は次の通り.

      gem list
      

      ■ ruby-1.9.2-head をインストールした場合の実行例


    voltrb パッケージを gem を用いてインストール

    1. 端末を起動

    2. Ruby の gem の更新

      先に Ruby の gem ファイルを最新のものに更新したいので、端末で 「sudo gem update」を実行します.

      sudo gem update
      

    3. sudo gem install voltrb」の実行

      sudo gem install voltrb
      

    4. インストールできたかは,「gem list」の実行で確認できる.実行例は次の通り.

      gem list