创业板安装在红宝石libv8 --version“3.11.8.17”(窗)(gem install

2019-09-02 18:40发布

问题是如下。

Error installing libv8:
ERROR: Failed to build gem native extension.

    D:/Ruby193/bin/ruby.exe extconf.rb
    creating Makefile
    The system can not find the specified path

        D:Ruby193/lib/ruby/gems/1.9.1/gems/libv8-3.11.8.17/ext/libv8/builder.rb:49:in'setup_python!':libv8 requires python 2 to be installed in order to build,but it is currently not available (RuntimeError)
             from D:Ruby193/lib/ruby/gems/1.9.1/gems/libv8-3.11.8.17/ext/libv8/builder.rb:35:in 'block in build_libv8!'
             from D:Ruby193/lib/ruby/gems/1.9.1/gems/libv8-3.11.8.17/ext/libv8/builder.rb:34:in 'chdir'
             from D:Ruby193/lib/ruby/gems/1.9.1/gems/libv8-3.11.8.17/ext/libv8/builder.rb:34:in 'build_libv8!'
             from D:Ruby193/lib/ruby/gems/1.9.1/gems/libv8-3.11.8.17/ext/libv8/builder.rb:34:in 'install!'
             from extconf.rb:7: in '<main>'
I have installed the python27 and add the path.

python --version
Python 2.7.4

然后我检查代码如下。

 def setup_python!
      # If python v2 cannot be found in PATH,
      # create a symbolic link to python2 the current directory and put it
      # at the head of PATH. That way all commands that inherit this environment
      # will use ./python -> python2
      if python_version !~ /^2/
        unless system 'which python2 2>&1 > /dev/null'
          fail "libv8 requires python 2 to be installed in order to build, but it is currently #{python_version}"
        end
        `ln -fs #{`which python2`.chomp} python`
        ENV['PATH'] = "#{File.expand_path '.'}:#{ENV['PATH']}"
      end
    end

我尝试安装Linux的命令行窗口,使“LN -fs”应该是working.But问题仍不能得到解决。

Answer 1:

试试这个:

gem install libv8 -v '3.11.8.17' -- --with-system-v8

此错误是一个痛苦,直到我运行上面的命令:)



Answer 2:

试着用https://github.com/eakmotion/therubyracer_for_windows 。 我一直在使用这种解决方案我的Windows机器上解决了同样的问题。



Answer 3:

跟着这些步骤:

  1. 从这里得到适当的Python http://python.org/download/
  2. 在此命令中设定路径SET PATH=<ruby directory>;<python directory> (例如SET PATH=C:\Ruby192\bin;C:\Python27

并立即安装你的愿望宝石

gem install libv8

得到了该解决方案在这里 。

我不知道,如果你收到此错误的版本。 试试这个:

gem install libv8 --version 3.11.8.0 


Answer 4:

要确保你可以实际运行的“ which在您的系统”命令。 这不是本机到Windows。

which ”应该,如果你安装的devkit或RailsInstaller安装。 但是,我遇到了这个问题太(我也有一些安装和运行的Python的版本),以及刚刚发现,我which下命令DevKit... (和RailsInstaller ...下一个)不实际工作。

接近相等的窗户是“ where ”。 所以,你应该运行“ WHERE which ”,以找出是否/,你必须在你的系统上“的”命令。

这不会让'therubyracer的工作,或与libv8问题消失,但它是问题的一部分。

(我已经张贴问题到msysGit人,看看他们说的非执行“它”的命令是什么。)



Answer 5:

我可以读这错了,但我认为这个问题是这一行:

unless system 'which python2 2>&1 > /dev/null'

它寻找python2时候,其实对于蟒蛇命令简直是python

也许尝试走样pythonpython2



Answer 6:

这样做: gem install rmagick -v '2.13.2'

然后执行: gem install libv8 -v 3.11.8.17 -- --with-system-v8



Answer 7:

此错误是关于一个libv8-3.11.8.17 \分机\ libv8 \ builder.rb脚本。 在第60行,我们可以看到这样的代码:

`python -c 'import platform; print(platform.python_version())'`.chomp

这是Windows错误蟒蛇命令语法。 您应该使用双引号,像这样:

`python -c "import platform; print(platform.python_version())"`.chomp

修复此脚本后,您应该运行安装宝石与“-l”(使用本地唯一的)关键。 如果不这样做,创业板将重新下载一个脚本错误。



Answer 8:

这是下面的步骤我要好好弄therubyracer在Windows上运行:

1)安装Python 2.7

2)转到这里这里https://github.com/eakmotion/therubyracer_for_windows ,并按照指示

3)评论在Gemfile中和运行bundle therubyracer创业板安装

#gem 'therubyracer'

4)的Gemfile和运行bundle取消注释宝石therubyracer安装

gem 'therubyracer'


文章来源: gem install libv8 --version '3.11.8.17' on ruby (windows)