そういうことだったんですね

いろいろ調べたり学んだりしたことを忘れないように書き連ねています

Rails4 (3)

 

前回はWindows上でセットアップしたが、なかなかやっかいなのでCentOS5.9上で実行。

最新OSでやらなかったのを後で悔いることに。。。

OSのインストールまでは割愛(VMWare上にセットアップ)。

CentOS 5.9 に Rails 環境を設定する

 

○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をつかいましょう。
  • よくドキュメントをよみましょう。