QA@IT

Windows7で V8 動作は?

4242 PV

今 Macで動作しているRailsアプリをWindows7でも動作させようと試みましたが

in `require': cannot load such file -- v8 (LoadError)

で怒られます。
以前検索して、Windowsで V8 は動作しないのだとあきらめたことがありますが、状況は変わっていないのでしょうか?

$ rails s
[WARNING] Please install gem 'therubyracer' to use Less.
[WARNING] Please install gem 'therubyracer' to use Less.
c:/mogok/Ruby193/lib/ruby/gems/1.9.1/gems/activesupport-3.2.9/lib/active_support/dependencies.rb:251:in `require': cannot load such file -- v8 (LoadError)
        from c:/mogok/Ruby193/lib/ruby/gems/1.9.1/gems/activesupport-3.2.9/lib/active_support/dependencies.rb:251:in `block in require'
        from c:/mogok/Ruby193/lib/ruby/gems/1.9.1/gems/activesupport-3.2.9/lib/active_support/dependencies.rb:236:in `load_dependency'
        from c:/mogok/Ruby193/lib/ruby/gems/1.9.1/gems/activesupport-3.2.9/lib/active_support/dependencies.rb:251:in `require'
        from c:/mogok/Ruby193/lib/ruby/gems/1.9.1/gems/less-2.2.2/lib/less/java_script/v8_context.rb:2:in `<top (required)>'
        from c:/mogok/Ruby193/lib/ruby/gems/1.9.1/gems/activesupport-3.2.9/lib/active_support/dependencies.rb:251:in `require'
        from c:/mogok/Ruby193/lib/ruby/gems/1.9.1/gems/activesupport-3.2.9/lib/active_support/dependencies.rb:251:in `block in require'
        from c:/mogok/Ruby193/lib/ruby/gems/1.9.1/gems/activesupport-3.2.9/lib/active_support/dependencies.rb:236:in `load_dependency'
        from c:/mogok/Ruby193/lib/ruby/gems/1.9.1/gems/activesupport-3.2.9/lib/active_support/dependencies.rb:251:in `require'
        from c:/mogok/Ruby193/lib/ruby/gems/1.9.1/gems/less-2.2.2/lib/less/java_script.rb:9:in `default_context_wrapper'
        from c:/mogok/Ruby193/lib/ruby/gems/1.9.1/gems/less-2.2.2/lib/less/java_script.rb:17:in `context_wrapper'
        from c:/mogok/Ruby193/lib/ruby/gems/1.9.1/gems/less-2.2.2/lib/less/loader.rb:10:in `initialize'
        from c:/mogok/Ruby193/lib/ruby/gems/1.9.1/gems/less-2.2.2/lib/less.rb:14:in `new'
        from c:/mogok/Ruby193/lib/ruby/gems/1.9.1/gems/less-2.2.2/lib/less.rb:14:in `<module:Less>'
        from c:/mogok/Ruby193/lib/ruby/gems/1.9.1/gems/less-2.2.2/lib/less.rb:9:in `<top (required)>'
        from c:/mogok/Ruby193/lib/ruby/gems/1.9.1/gems/activesupport-3.2.9/lib/active_support/dependencies.rb:251:in `require'
        from c:/mogok/Ruby193/lib/ruby/gems/1.9.1/gems/activesupport-3.2.9/lib/active_support/dependencies.rb:251:in `block in require'
        from c:/mogok/Ruby193/lib/ruby/gems/1.9.1/gems/activesupport-3.2.9/lib/active_support/dependencies.rb:236:in `load_dependency'
        from c:/mogok/Ruby193/lib/ruby/gems/1.9.1/gems/activesupport-3.2.9/lib/active_support/dependencies.rb:251:in `require'
        from c:/mogok/Ruby193/lib/ruby/gems/1.9.1/gems/less-rails-2.2.6/lib/less/rails.rb:6:in `<top (required)>'
        from c:/mogok/Ruby193/lib/ruby/gems/1.9.1/gems/bundler-1.2.1/lib/bundler/runtime.rb:74:in `require'
        from c:/mogok/Ruby193/lib/ruby/gems/1.9.1/gems/bundler-1.2.1/lib/bundler/runtime.rb:74:in `rescue in block in require'
        from c:/mogok/Ruby193/lib/ruby/gems/1.9.1/gems/bundler-1.2.1/lib/bundler/runtime.rb:62:in `block in require'
        from c:/mogok/Ruby193/lib/ruby/gems/1.9.1/gems/bundler-1.2.1/lib/bundler/runtime.rb:55:in `each'
        from c:/mogok/Ruby193/lib/ruby/gems/1.9.1/gems/bundler-1.2.1/lib/bundler/runtime.rb:55:in `require'
        from c:/mogok/Ruby193/lib/ruby/gems/1.9.1/gems/bundler-1.2.1/lib/bundler.rb:128:in `require'
        from c:/Users/o-fukui/postcode/config/application.rb:13:in `<top (required)>'
        from c:/mogok/Ruby193/lib/ruby/gems/1.9.1/gems/railties-3.2.9/lib/rails/commands.rb:53:in `require'
        from c:/mogok/Ruby193/lib/ruby/gems/1.9.1/gems/railties-3.2.9/lib/rails/commands.rb:53:in `block in <top (required)>'
        from c:/mogok/Ruby193/lib/ruby/gems/1.9.1/gems/railties-3.2.9/lib/rails/commands.rb:50:in `tap'
        from c:/mogok/Ruby193/lib/ruby/gems/1.9.1/gems/railties-3.2.9/lib/rails/commands.rb:50:in `<top (required)>'
        from script/rails:6:in `require'
        from script/rails:6:in `<main>'

回答

手元に環境が無くて試せないのが申し訳ないのですが、node をインストール後に therubyracer を使うのをやめると execjs が node を参照するような気がします。

編集 履歴 (0)
  • おぉnodeという大技もあるのですね!今試せないのですが、やってみたいと思います。ありがとうございました。 -
  • nodeをインストール後 「gem 'therubyracer', :platforms => :ruby」をコメント化(そもそも :platforms => :rubyにてWindowsでは不使用でも念のため)して再トライしましたが状況は変わりませんでした(;_;)次に http://efcl.info/2011/0329/res2449/ を試しています。SConsやgypとかの世界に弄ばれ中 -
  • svnでなくgitでほぼこの通りやりました→ http://d.hatena.ne.jp/bravewood/20120617 が「ビルド: 0 正常終了、11 失敗、5 更新不要、0 スキップ」で撃沈されました。 -
  • 新らしめの情報(http://studiomikan.net/blog/?p=843)で「python build\gyp_v8 -Dtarget=x86 -Dcomponent=static_library」でall.sln を作り直してトライするものの「ビルド: 1 正常終了、11 失敗、4 更新不要、0 スキップ」一歩前進のみ! -
  • v8本家のこれ http://code.google.com/p/v8/source/browse/trunk/build/README.txt 以上の情報はないのでしょうか? -
  • ビルドの際にデバッグモードをreleaseモードにすると「ビルド: 4 正常終了、11 失敗、0 更新不要、1 スキップ」に前進! -
  • XPでまっさらからやり直しました。
    「ビルド: 5 正常終了、11 失敗、0 更新不要、0 スキップ」で一歩前進!
    -
ウォッチ

この質問への回答やコメントをメールでお知らせします。