Yosemite 10.10にtherubyracer gemをインストールできません。
ログは次のとおりです。
11:53 $ gem install libv8 -v '3.16.14.3'---with-system-v8 ネイティブ拡張のビルド: '- -with-system-v8 ' これには時間がかかる可能性があります... libv8-3.16.14.3 libv8-3.16.14.3 の解析ドキュメントのインストールに成功しましたlibv8-3.16.14.3 のriドキュメントのインストール0秒後にlibv8のドキュメントのインストールを完了 1 gem installed 02:05 $ gem rubyracer -v '0.12.1'をインストールします---with-system-v8 「-with-system-v8」[.____でネイティブ拡張をビルドします。]これには時間がかかる場合があります... エラー:therubyracerのインストールエラー: エラー:gemネイティブ拡張のビルドに失敗しました。 /usr/local/var/rbenv/versions/2.1.2/bin/Ruby extconf.rb --with-system-v8 -lpthreadのmain()のチェック... yes main()のチェックin -lobjc ... yes v8.hのチェック... no *** extconf.rbが失敗しました*** tのためにMakefileを作成できませんでしたo何らかの理由、おそらく必要な ライブラリやヘッダーが不足している。詳細については、mkmf.logファイルを確認してください。 構成オプションが必要な場合があります。 提供された構成オプション: --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 =/usr/local/var/rbenv/versions/2.1.2/bin/Ruby --with-pthreadlib - -without-pthreadlib --with-objclib --without-objclib --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}/lib /usr/local/var/rbenv/versions/2.1.2/lib/Ruby/gems/2.1.0/gems/libv8-3.16.14.3/ext/libv8/location.rb:50:in `configure ':見つかったバージョンのV8を使用することを選択しましたシステム(Libv8 :: Location :: System :: NotFoundError) であり、libv8 rubygemにバンドルされているものではありません。しかし、 それが見つかりませんでした。 3.16.14.3と互換性のある v8のバージョンがインストールされていることを確認してください。非標準の場所 ありがとう、 にある場合は、特別な--with-v8-dirオプションが必要な場合があります /usr/local/var/rbenv/versions/2.1.2/lib/Ruby/gems/2.1.0/gems/libv8-3.16.14.3/lib/libv8.rbのMgmt :7:extconfig.rbからの `configure_makefile ' :32:in`' extconfが失敗し、終了コード1 Gemファイル検査のために/usr/local/var/rbenv/versions/2.1.2/lib/Ruby/gems/2.1.0/gems/therubyracer-0.12.1にインストールされたままになります。 結果は/ usr /に記録されますlocal/var/rbenv/versions/2.1.2/lib/Ruby/gems/2.1.0/extensions/x86_64-darwin-14/2.1.0-static/therubyracer-0.12.1/gem_make.out
git clone https://github.com/cowboyd/libv8.git
cd libv8
bundle install
bundle exec rake clean build binary
gem install pkg/libv8-3.16.14.3-x86_64-darwin-12.gem #note that libv8 version may change, so tab through files in pkg/, also remember to use the one with version specified
次に、プロジェクトのgemをバンドルします
これは、10.10(Ruby 2.1.2)で動作する唯一の方法です
gem uninstall libv8
brew install v8
gem install therubyracer
gem install libv8 -v '3.16.14.3' -- --with-system-v8
これは、10.10(Ruby 2.1.2)で動作する唯一の方法です
または、gem install libv8 -v 'XX.XX.XX' -- --with-system-v8
gemのバージョンを追加してみてください:)
今回の答えはどれもうまくいきません。私もこれを使用しています:
brew tap homebrew/versions
brew install v8-315
gem install libv8 -v '3.16.14.13' -- --with-system-v8
gem install therubyracer -- --with-v8-dir=/usr/local/opt/v8-315
bundle install
Rubyracer Githubの問題で見られます。
それが他の誰かを助けることを願っています。
たぶんそれは誰かにとって役に立つでしょうが、therubyracerのインストールに問題がありました(libv8の問題のため)解決策はアンインストール私がインストールしたすべてのlibv8でした。 rubyracerをインストールする
$ gem uninstall libv8
$ gem install therubyracer -v '0.12.0'
Fetching: libv8-3.16.14.7-x86_64-darwin-14.gem ( 57%)
Fetching: libv8-3.16.14.7-x86_64-darwin-14.gem (100%)
Successfully installed libv8-3.16.14.7-x86_64-darwin-14
Building native extensions. This could take a while...
Successfully installed therubyracer-0.12.0
2 gems installed
これが誰かの助けになることを願っています。
これはアップストリームで修正されたようです。私と@aurelsと@Mike Causerと@Juandaでうまくいったのは:
bundle update libv8
これはYosemiteとRuby 2.1.5(RVM経由のRuby)で非常にうまく機能しました
gem install libv8 -v '3.16.14.3' -- --with-system-v8
以前は、libv8 gemバージョン3.16.14.3でエラーGem::Ext::BuildError: ERROR: Failed to build gem native extension.
が表示されました。
rm Gemfile.lock
の後、Rubyレーサーに進むことができました
事前:brew install v8
を介してv8をインストールしてから、gem install libv8 -v '3.16.14.3' -- --with-system-v8
を実行しました
そして、私は10.10ヨセミテを実行しています
私のヨセミテではこれだけが機能します、Ruby 2.1.2:
gem install libv8 -v '3.16.14.3' -- --with-system-v8
brew link --overwrite v8-315 --force
gem install therubyracer -v '0.12.2' -- --with-system-v8
彼らは、libv8の最新バージョンでこの問題を修正しました。参照: https://github.com/cowboyd/libv8/issues/12
Railsのgithubリポジトリからインストールする必要があります。gemfileに次のような行を追加しましたgem "libv8", git: "git://github.com/cowboyd/libv8.git", submodules: true
編集:
これは明らかに問題の一部を解決するだけです。新しいバージョンのlibv8をインストールしましたが、今ではrubyracerは他のバージョンを探していますか?まだ調べています。
ヨセミテでも同じ問題がありました。私の解決策は、上に表示されるものに似ています。
gem uninstall libv8
を使用して、インストールされている可能性のあるものをすべて削除します。
Gemfileにtherubyracerを残しますが、libv8への明示的な参照を削除します。
bundle install
を実行します。
その後、libv8は依存関係として正常にインストールされました。
2018の回答を更新しました。
私はHigh Sierra、Homebrew 1.6.1を使用しています
brew install v8-315
gem install libv8 -v '3.16.14.13' -- --with-system-v8
gem install therubyracer -- --with-v8-dir=/usr/local/opt/[email protected]/
私のために働いたものです。
クレジットは、彼の 元の回答 に対して@ coding-addictedになります。
単純にRubyをアップグレードしようとして何時間も働いた後:
brew install Ruby
次に、gemファイルに次を追加します。
gem 'libv8'
gem 'therubyracer'
これはlibv8との競合が原因で発生しますが、バージョンをrubyracerに割り当てるだけでインストールできます。
gemfileで次を変更します。
gem 'therubyracer'、 '〜> 0.12.1'
バンドルインストールを行います
このソリューションは、上記のJakub Troszokのソリューションに続いて、わずかな変更を加えて機能しました
gem uninstall libv8
gem install therubyracer -v '0.12.1'
Fetching: libv8-3.16.14.19-x86_64-darwin-18.gem (100%)
Successfully installed libv8-3.16.14.19-x86_64-darwin-18
Building native extensions. This could take a while...
Successfully installed therubyracer-0.12.1
Parsing documentation for libv8-3.16.14.19-x86_64-darwin-18
Installing ri documentation for libv8-3.16.14.19-x86_64-darwin-18
Parsing documentation for therubyracer-0.12.1
Installing ri documentation for therubyracer-0.12.1
Done installing documentation for libv8, therubyracer after 0 seconds
2 gems installed
gem install libv8 -v '3.16.14.17' -- --with-system-v8 (if the libv8 version required for your project is different from the one installed by rubyracer)
bundle install
私は次のことをしました
gem install therubyracer
これにより、therubyracer 0.12.1
がインストールされ、依存関係がインストールされますlibv8 (3.16.14.7 x86_64-darwin-14)
エラーなしでインストールされました。
これは、次の方法でインストールしたRuby 2.1.5
を使用して行いました。
CC=/usr/bin/gcc rbenv install 2.1.5
brew upgrade Ruby-builds
を実行した後に実行しました。
Ruby 2.1.5
をインストールした後、私も実行しました
gem upgrade --system
rubygems-update 2.4.5
を取得するには
私の問題を抱えている可能性のある人に向かって:RVMでRubyバージョンをアンインストールしてから再インストールしました。これは、Rubyをコンパイルするための最新バージョンのxcodeツールで正しい依存関係を使用しているようです。
rvm list
rvm uninstall Ruby-x.x.x
rvm install Ruby-x.x.x
次のコメントに基づいて、私のために働いたもの、
https://github.com/cowboyd/therubyracer/issues/304#issuecomment-62046085
gemfile.lockを削除してから、バンドルインストールを実行することでした