Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Different can't build native extension issue #56

Closed
aurimus opened this issue Apr 25, 2017 · 1 comment
Closed

Different can't build native extension issue #56

aurimus opened this issue Apr 25, 2017 · 1 comment

Comments

@aurimus
Copy link

aurimus commented Apr 25, 2017

I'm trying to setup Rails on native Windows 10 (since WSL is 10x slower).

Installing mini_racer gem fails with the pasted output, it says it cannot find python 2, although I have it installed and in the PATH (python --version works)

D:\projects\app>gem install mini_racer
Temporarily enhancing PATH to include DevKit...
Building native extensions.  This could take a while...
ERROR:  Error installing mini_racer:
        ERROR: Failed to build gem native extension.

    current directory: C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/libv8-5.3.332.38.5/ext/libv8
C:/Ruby23-x64/bin/ruby.exe -r ./siteconf20170425-12504-za1opv.rb extconf.rb
creating Makefile
The system cannot find the path specified.
The system cannot find the path specified.
The system cannot find the path specified.
C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/libv8-5.3.332.38.5/ext/libv8/builder.rb:84:in `setup_python!': libv8 requires python 2 to be installed in order to build, but it is currently not available (RuntimeError)
        from C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/libv8-5.3.332.38.5/ext/libv8/builder.rb:62:in `build_libv8!'
        from C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/libv8-5.3.332.38.5/ext/libv8/location.rb:24:in `install!'
        from extconf.rb:7:in `<main>'

extconf failed, exit code 1

Gem files will remain installed in C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/libv8-5.3.332.38.5 for inspection.
Results logged to C:/Ruby23-x64/lib/ruby/gems/2.3.0/extensions/x64-mingw32/2.3.0/libv8-5.3.332.38.5/gem_make.out

If I install libv8 first, then I get different error while installing mini_racer:

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

    current directory: C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/mini_racer-0.1.9/ext/mini_racer_extension
C:/Ruby23-x64/bin/ruby.exe -r ./siteconf20170425-11740-43a86w.rb extconf.rb
checking for main() in -lpthread... yes
SETTING CXX
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:/Ruby23-x64/bin/$(RUBY_BASE_NAME)
        --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}/lib
C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/libv8-5.3.332.38.5/ext/libv8/location.rb:57:in `configure': By using --with-system-v8, you have chosen to use the version (Libv8::Location::System::NotFoundError)
of V8 found on your system and *not* the one that is bundled with
the libv8 rubygem.

However, your system version of v8 could not be located.

Please make sure your system version of v8 that is compatible
with 5.3.332.38.5 installed. You may need to use the
--with-v8-dir option if it is installed in a non-standard location
        from C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/libv8-5.3.332.38.5/lib/libv8.rb:7:in `configure_makefile'
        from extconf.rb:52:in `<main>'

To see why this extension failed to compile, please check the mkmf.log which can be found here:

  C:/Ruby23-x64/lib/ruby/gems/2.3.0/extensions/x64-mingw32/2.3.0/mini_racer-0.1.9/mkmf.log

extconf failed, exit code 1

Gem files will remain installed in C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/mini_racer-0.1.9 for inspection.
Results logged to C:/Ruby23-x64/lib/ruby/gems/2.3.0/extensions/x64-mingw32/2.3.0/mini_racer-0.1.9/gem_make.out

If I try to install libv8 without the system attribute, then I get the first error again for no python.

Is there a solution?

@ignisf
Copy link
Collaborator

ignisf commented Apr 25, 2017

Hello,

Thank you for taking the time to report this to us.

The issue you are experiencing has to do with the libv8 gem. Currently it has no Windows support :(. It has been a long requested feature but nobody has stepped up to take ownership of it yet.

Feel free to ask if you have any questions. Meanwhile I'll close this ticket as I think this is not the correct project for it.

@ignisf ignisf closed this as completed Apr 25, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants