rails 3.2 は JavaScript エンジンを必要とする・・・のに gem 全自動で入ってくれないらしい
久々に、rails 周りをいじってみようかと CentOS 6.3 上に環境を整える。そもそも ruby 周りも久々だ。
[Ruby] RVM をインストール
まず、独立した ruby 環境を作るため、 rvm を導入。
$ curl -L https://get.rvm.io | bash -s stable --ruby
まぁ、オープンソースのプロダクトを導入する際に、ソースをセキュリティチェックする人なんて居ない訳だけれども、ここまであからさまにネット上からコードをインジェクトされると、自分のやっていること(WHAT YOU ARE DOING!)を思い知らされますな。
まぁ、一般ユーザだし、いいか。
RVMをインストールすると、.bash_profile 周りに環境が組み込まれるので、
$ exec bash --login
なり、ログインし直すなりして環境読み直し。
[Ruby] Ruby-1.9.3 をインストール
必要なライブラリをインストール。CentOS 6.3は 'Developer Workstation' で入れてあれば、足りてないのはおそらくlibyamlだけ。たぶん。(この前 Oracleも入れたので compatとか、色々入っちゃってるかも知らんけど)
$ rvm pkg install libyaml
$ rvm install ruby-1.9.3-p194 --with-libyaml-dir=$rvm_path/usr
[Rails] rake db:create には、JavaScript エンジンが必要!
結局、長々と手順を書いてみた理由はこれ。
$ rails new hoge
$ cd hoge
$ rake db:create
rake aborted!
Could not find a JavaScript runtime. See https://github.com/sstephenson/execjs for a list of available runtimes.
なんや?!
今起こったことを(ry ... ruby触ってたつもりが ... JavaScript Engineを要求 ... だと?
なんか、3.1 あたりから、CoffeScript を使うようになったらしい。
何故、gem で同時にインストールされないのか、謎ではあるのだけれども、プロジェクトの Gemfile を編集。
# gem 'therubyracer', :platforms => :ruby
上記のコメントを外し、
$ bundle install
を実行。
これで、やっと動く環境が出来た。。。
まったく、色々変わりすぎだぜ。。。