Rails4 (3)
前回はWindows上でセットアップしたが、なかなかやっかいなのでCentOS5.9上で実行。
最新OSでやらなかったのを後で悔いることに。。。
OSのインストールまでは割愛(VMWare上にセットアップ)。
○ruby2.0をインストールする
$ tar -jxvf ruby-2.0-p247.tar.bz2
$ cd ruby-2.0.0-p247
$ ./configure --enable-pthread --enable-shared --prefix=/usr/local/ruby2
$ make -j2
$ make check
$ su
# make install
○rails4 をインストールする
# gem install rails
○テストプロジェクト
$ cd work
$ rails new test_app -B
$ cd test_app
$ rails server
エラー発生
Rails 3.1 から execjs を使っている、らしく。
rpm を思い出すかのような依存関係の罠。
ここでGemfileをいじらなかったのを悔いることに。。。
○ExecJS と RubyRacer(V8)をインストール
$ gem install execjs
$ gem install libv8 -- --with-system-v8
$ gem install therubyracer
○環境変数 EXECJS_RUNTIME を設定
$ export EXECJS_RUNTIME=RubyRacer
$ rails server
/usr/local/ruby2/lib/ruby/gems/2.0.0/gems/execjs-1.4.0/lib/execjs/runtimes.rb:65:in `from_environment': therubyracer (V8) runtime is not available on this system (ExecJS::RuntimeUnavailable)
!!
○execjs をGemfileに追加
$ vi Gemfile
---
gem 'execjs'
gem 'therubyracer'
gem 'uglifier'
---
$ rails server
=> Booting WEBrick
=> Rails 4.0.0 application starting in development on http://0.0.0.0:3000
=> Run `rails server -h` for more startup options
=> Ctrl-C to shutdown server
[2013-07-19 22:01:59] INFO WEBrick 1.3.1
[2013-07-19 22:01:59] INFO ruby 2.0.0 (2013-06-27) [x86_64-linux]
[2013-07-19 22:01:59] INFO WEBrick::HTTPServer#start: pid=15755 port=3000
○ブラウザで確認
http://localhost:3000 を表示させる
Started GET "/" for 127.0.0.1 at 2013-07-19 22:04:08 +0900
Processing by Rails::WelcomeController#index as HTML
Rendered /usr/local/ruby2/lib/ruby/gems/2.0.0/gems/railties-4.0.0/lib/rails/templates/rails/welcome/index.html.erb (3.3ms)
Completed 200 OK in 57ms (Views: 26.9ms | ActiveRecord: 0.0ms)
成功!!
※反省点
- bundleをつかいましょう。
- よくドキュメントをよみましょう。