首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >安装libv8时出错:错误:无法构建gem本机扩展

安装libv8时出错:错误:无法构建gem本机扩展
EN

Stack Overflow用户
提问于 2013-10-30 12:15:52
回答 14查看 105.3K关注 0票数 191

我做了一个rails项目,

代码语言:javascript
复制
rails new test_bootstrap.

成功。

已移至项目目录并添加了gem

代码语言:javascript
复制
gem "therubyracer"
gem "less-rails" #Sprockets (what Rails 3.1 uses for its asset pipeline) supports LESS
gem "twitter-bootstrap-rails"

然后运行

代码语言:javascript
复制
bundle install

在那之后,我就有了这个错误。

代码语言:javascript
复制
Installing libv8 (3.16.14.3)
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.

c:/RailsInstaller/Ruby1.9.3/bin/ruby.exe extconf.rb
creating Makefile
지정된 경로를 찾을 수 없습니다.                                                          지정된 경로를 찾을 수
없습니다.                                                          지정된 경로를 찾을 수 없습니다.

c:/RailsInstaller/Ruby1.9.3/lib/ruby/ge
ms/1.9.1/gems/libv8-3.16.14.3/ext/libv8/builder.rb:58:in `setup_python!': libv8 requires
python 2 to be installed in order to build, but it is currently not available (RuntimeErr
or) from c:/RailsInstaller/Ruby1.9.
3/lib/ruby/gems/1.9.1/gems/libv8-3.16.14.3/ext/libv8/builder.rb:42:in `block in build_lib
v8/builder.rb:42:in `block in build_libv8!'
        from c:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/libv8-3.16.14.3/ext/lib
v8/builder.rb:40:in `chdir'
        from c:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/libv8-3.16.14.3/ext/lib
v8/builder.rb:40:in `build_libv8!'
        from c:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/libv8-3.16.14.3/ext/lib
v8/location.rb:24:in `install!'
        from extconf.rb:7:in `<main>'                                                    


Gem files will remain installed in c:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/l
ibv8-3.16.14.3 for inspection.
Results logged to c:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/libv8-3.16.14.3/ex
t/libv8/gem_make.out
An error occurred while installing libv8 (3.16.14.3), and Bundler cannot
continue.
Make sure that `gem install libv8 -v '3.16.14.3'` succeeds before bundling.

为一些韩国人感到抱歉。它说,它找不到选择的路径或类似的东西。

我试着运行这个命令

代码语言:javascript
复制
gem install libv8 -v '3.16.14.3' 

抛出同样的错误。

EN

回答 14

Stack Overflow用户

发布于 2015-04-18 00:56:46

如何解决libv8/therubyracer问题

我遇到了类似的问题,在安装libv8后,安装therubyracer时出错。以下是我的解决方案:

代码语言:javascript
复制
$ gem install libv8 -v '3.16.14.3' -- --with-system-v8
   
$ bundle install

--请参阅安装therubyracer时出错--

代码语言:javascript
复制
$ gem uninstall libv8

$ brew install v8

$ gem install therubyracer

$ bundle install

--请参阅安装libv8时出错--

代码语言:javascript
复制
$ gem install libv8 -v '3.16.14.3' -- --with-system-v8
票数 160
EN

Stack Overflow用户

发布于 2016-04-14 22:15:36

我尝试了上面列出的解决方案,该命令看起来非常适合安装单独的gem,但对于bundler用户,您应该使用包配置。

使用

代码语言:javascript
复制
bundle config build.libv8 --with-system-v8 

代码语言:javascript
复制
bundle config build.therubyracer --with-system-v8

配置bundler以获取安装特定gem时要使用的参数

票数 53
EN

Stack Overflow用户

发布于 2016-04-04 01:00:58

使用homebrew,这可以帮助我解决这个错误。

代码语言:javascript
复制
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问题上见过。

对于作为homebrew /版本已被删除的homebrew的新版本:

代码语言:javascript
复制
brew install v8@3.15

gem install libv8 -v '3.16.14.13' -- --with-system-v8
gem install therubyracer -- --with-v8-dir=/usr/local/opt/v8@3.15

bundle install

@gorner的建议(thx)

票数 49
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19673714

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档