経緯

仕事で必要となり表題の環境を準備することになった 苦労したためその際の手順およびハマった点等を備忘録として残しておく

構築環境

  • ruby: ruby 1.8.7
  • rails: rails 2.3.18

手順

  1. Ruby Installer で Ruby(1.8.7 p-374) および DevKit(DevKit-tdm-32-4.5.2-20111229-1559-sfx.exe) をダウンロードする

  2. Ruby をインストールする(オプションで環境変数パスへの登録を有効にする)

  3. DevKit を展開する(自己解凍形式の圧縮ファイルなので、実行して適当なところに展開する)

    • 3-1. コマンドプロンプトで展開した場所に移動し以下のコマンドを入力する
    ruby dk.rb init
    ruby dk.rb install
    
  4. rubygems-update のバージョンをダウングレードする

    • 4-1. 以下のコマンドを入力する
    gem update --system 1.3.7
    

    ※以下のエラーが起きる場合はこのサイトを参考に手動で rubygems-update をダウングレードする

     gem update --system
    ERROR:  While executing gem ... (Gem::RemoteFetcher::FetchError)
    SSL_connect returned=1 errno=0 state=SSLv2/v3 read server hello A: tlsv1 alert protocol version (https://rubygems.org/latest_specs.4.8.gz)
    
  5. 動作確認用のフォルダを作成

  6. 以下の gem をインストールする

    • 6-1. このサイトで1.8.7に対応しているバージョンを調べてバージョン指定でインストールする
    gem install rake -v 0.8.7
    gem install rails -v 2.3.18
    gem install rdoc -v 2.4.2
    

    ※rake を先にインストールしないと Ruby のバージョンが古い旨のエラーが発生するため先インストールする

  7. 動作確認用の Rails プロジェクトを作成する

    rails sample-rails
    cd sample-rails
    ruby script/generate scaffold user name:string age:integer
    
  8. db のマイグレートを行う

    • 8-1. デフォルトの sqlite3 用の Gem をインストールする
    gem install sqlite3 -v 1.3.3
    
    • 8-2. DLL ファイルをダウンロードする

      • sqlitedll-3_7_3.zip をダウンロードする
        ※最新のやつだとエラーになるため古いやつをダウンロードすること
      • ダウンロードしたやつを解凍して sqlite3.dll
        を Ruby のインストールフォルダ/bin(例. C:\Ruby187\bin)にコピーする
    • 8-3. 以下のコマンドを入力して db のマイグレートを行う

    rake db:create
    rake db:migrate
    
  9. サーバを起動する

    ruby script/server
    
  10. サーバ(http://localhost:3000/users) にアクセスして動作確認を行う