4

gem install libv8 -- --with-system-v8 を使用して、ようやく libv8 を Windows にインストールしました。

今、therubyracer をインストールしようとすると、

gem install therubyracer
Temporarily enhancing PATH to include DevKit...
Building native extensions.  This could take a while...
Building native extensions.  This could take a while...
ERROR:  Error installing therubyracer:
        ERROR: Failed to build gem native extension.

        C:/Ruby193/bin/ruby.exe extconf.rb --with-system-v8
checking for main() in -lpthread... no
checking for v8.h... no
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers.  Check the mkmf.log file for more
details.  You may need configuration options.

Provided configuration options:
        --with-opt-dir
        --without-opt-dir
        --with-opt-include
        --without-opt-include=${opt-dir}/include
        --with-opt-lib
        --without-opt-lib=${opt-dir}/lib
        --with-make-prog
        --without-make-prog
        --srcdir=.
        --curdir
        --ruby=C:/Ruby193/bin/ruby
        --with-pthreadlib
        --without-pthreadlib
        --enable-debug
        --disable-debug
        --with-v8-dir
        --without-v8-dir
        --with-v8-include
        --without-v8-include=${v8-dir}/include
        --with-v8-lib
        --without-v8-lib=${v8-dir}/
C:/Ruby193/lib/ruby/gems/1.9.1/gems/libv8-3.16.14.3/ext/libv8/location.rb:50:in `configure': You hav
e chosen to use the version of V8 found on your system (Libv8::Location::System::NotFoundError)
and *not* the one that is bundle with the libv8 rubygem. However,
it could not be located. please make sure you have a version of
v8 that is compatible with 3.16.14.3 installed. You may
need to special --with-v8-dir options if it is in a non-standard
location

thanks,
The Mgmt

私が知りたいのは、このエラー メッセージの本当の意味は何ですか? また、これを調べましたhttps://github.com/cowboyd/libv8#bring-your-own-v8 v8のヘッダーをインストールするにはどうすればよいですか?

4

3 に答える 3

3

私がこの問題に直面したとき、レールはアセットをプリコンパイルするために使用されるため、開発にこれらの宝石は必要ないことがわかりました。私の解決策は非常に単純でした。

Gemfile

gem "rails"

group :production do
  gem 'therubyracer'
end

次に、バンドルするときにこのコマンドを実行します

$ bundle install --without production

それから人生に微笑む:D

于 2013-10-01T23:56:59.243 に答える
2

Mac では、自作で v8 ライブラリを更新してみることができます。

gem uninstall libv8
brew install v8
gem install therubyracer

更新:申し訳ありませんが、これが Windows のみの質問であることを認識していませんでした。

于 2013-10-30T19:10:04.327 に答える
1

@アーラップ

Windows 7 64 ビットで Ruby on Rails Web アプリケーションをセットアップしているときに、同じ問題に遭遇しました。私はこの解決策に出会いました。これは少し古いですが、問題を解決しました。このソリューションは、インストールする「therubyracer」gem ファイルと v8.dll ライブラリを提供します。手順は上記のリンクでかなり明確です。

SOでのPeribackの回答と同じように「libv8」gemをインストールしましたが、「therubyracer」gemをインストールしようとすると、あなたと同じエラーで失敗しました。これで、Web アプリケーションは正常に動作し、「gem list」コマンドは次のように表示されます。

libv8 (3.11.8.13)

therubyracer (0.11.0beta1 x86-mingw32)

お役に立てれば。

于 2014-05-22T11:45:58.150 に答える