7

私はこれに頭を悩ませてきました。関連するいくつかの投稿の提案に従いましたが、役に立ちませんでした。

Mountain Lion の新規インストールから始めて、コマンド ライン ツールをインストールし、Homebrew 経由で gcc-4.2 をインストールし、シンボリック リンクを /usr/ に追加するために見つけた他のいくつかの投稿に基づいて、Ruby 1.8.7 を正常にインストールしました。ビン/gcc-4.2。

しかし、現在、libv8 を正常にインストールできません。以下のエラーは、既存の提案から外れている限りです。

追加の入力はありますか?

Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.

        /Users/Eric/.rbenv/versions/1.8.7-p352/bin/ruby extconf.rb 
creating Makefile
Unable to find a compiler officially supported by v8.
It is recommended to use GCC v4.4 or higher
Traceback (most recent call last):
  File "build/gyp/gyp", line 18, in <module>
    sys.exit(gyp.main(sys.argv[1:]))
  File "build/gyp/pylib/gyp/__init__.py", line 480, in main
    generator.GenerateOutput(flat_list, targets, data, params)
  File "build/gyp/pylib/gyp/generator/make.py", line 2085, in GenerateOutput
    part_of_all=qualified_target in needed_targets)
  File "build/gyp/pylib/gyp/generator/make.py", line 756, in Write
    self.xcode_settings, self.Absolutify, self.Pchify))
  File "build/gyp/pylib/gyp/generator/make.py", line 1132, in WriteSources
    cflags = self.xcode_settings.GetCflags(configname)
  File "build/gyp/pylib/gyp/xcode_emulation.py", line 258, in GetCflags
    sdk_root = self._SdkPath()
  File "build/gyp/pylib/gyp/xcode_emulation.py", line 247, in _SdkPath
    return os.path.join(self._GetSdkBaseDir(), '%s.sdk' % sdk_root)
  File "build/gyp/pylib/gyp/xcode_emulation.py", line 233, in _GetSdkBaseDir
    raise Exception('Error %d running xcode-select' % job.returncode)
Exception: Error 2 running xcode-select
make: *** [out/Makefile.x64] Error 1
Using compiler: g++
GYP_GENERATORS=make \
    build/gyp/gyp --generator-output="out" build/all.gyp \
                  -Ibuild/standalone.gypi --depth=. \
                  -Dv8_target_arch=x64 \
                  -S.x64 -Dhost_arch=x64
xcode-select: Error: No Xcode is selected. Use xcode-select -switch <path-to-xcode>, or see the xcode-select manpage (man xcode-select) for further information.



Gem files will remain installed in /Users/Eric/Development/par8o/vendor/bundle/ruby/1.8/gems/libv8-3.11.8.3 for inspection.
Results logged to /Users/Eric/Development/par8o/vendor/bundle/ruby/1.8/gems/libv8-3.11.8.3/ext/libv8/gem_make.out
An error occured while installing libv8 (3.11.8.3), and Bundler cannot continue.
Make sure that `gem install libv8 -v '3.11.8.3'` succeeds before bundling.
4

9 に答える 9

15

取引はルビー1.8.7との取引です。おそらく、therubyracerを実行するにはこの宝石が必要です。そして、これを機能させるには、次のようにtherubyracergemをインストールする必要があります。

RUBYOPT=-rrubygems gem install therubyracer

これにより、therubyracerとlibv8の両方のgemがインストールされます。

ソース:http ://coderwall.com/p/y1djxq

于 2012-08-08T23:38:35.970 に答える
3

私はこの問題を抱えていて、ここで解決策を見つけました

要するに、自分で v8 をインストールします。自作の場合は、実行できます

brew install v8

次に、インストール時にシステム v8 を使用します

gem install libv8 -- --with-system-v8
于 2013-12-12T03:35:09.493 に答える
3

私の場合、libtool の問題により、コンパイルに失敗しました。エラーはgemlibtool: unrecognized option '-static'のインストール時に発生しました。libv8

問題は、私の macports-Installation が明らかに機能しない libtool を持っていたことです。そして、macports-Directory は$PATH、通常のディレクトリの前に間違った libtool が呼び出されました。

PATH-Environment 変数から macports-Directories を削除するとうまくいきました。 libtool fromXCodeが使用され、すべてがうまくいきました。

于 2012-12-19T09:34:14.893 に答える
2

OS X 10.7.5 でこの問題が発生した後、次の Gemfile エントリが機能しました。

gem "libv8", '3.11.8.13'

> ruby -v
ruby 1.9.3p327 (2012-11-10 revision 37606) [x86_64-darwin11.4.2]
于 2013-02-04T15:03:04.053 に答える
0

さまざまな方法で何度も失敗した後、ついにXcodeをダウンロードしました。エラーメッセージが示すように、これでうまくいきます。

于 2012-12-10T00:15:45.597 に答える
0

上記の RUBYOPT=-rrubygems の提案を使用するとうまくいきましたが、最初に既存の therubyracer と libv8 gem をアンインストールする必要がありました。

于 2012-11-13T00:27:15.900 に答える
0

上記の答えはどれもうまくいきませんでした。これがしたことです:

gem install libv8 -v '3.11.8.3'
gem install therubyracer -v '0.11.0beta5'

参照: https://coderwall.com/p/s8ofka

私のシステム:

OSX Mountain Lion
Ruby 1.9.3
于 2013-01-13T11:23:24.293 に答える
-2

異なるgemは異なるバージョンのGCCを必要とするため、これはすべてのgemで機能する場合と機能しない場合がありますが、これらのシンボリックリンクは、Xcode4.4がインストールされているMountainLionのjson、eventmachine、およびlibv8gemの問題を解決しました。

sudo ln -s /usr/llvm-gcc-4.2/bin/llvm-gcc-4.2 /usr/bin/gcc-4.2

sudo ln -s /usr/llvm-gcc-4.2/bin/llvm-gcc-4.2 /usr/bin/g++-4.2

于 2012-07-31T22:15:35.587 に答える