rubyjs / therubyracer

Embed the V8 Javascript Interpreter into Ruby
1.66k stars 191 forks source link

Build fails on SmartOS #324

Closed walterdavis closed 9 years ago

walterdavis commented 9 years ago

I had to give up and use the hand-compiled gem in the "Rails" machine image, rather than being able to install this gem using bundler in my existing server. Here's the error report:

[root@9b86bcae-a835-68c8-9fdb-bb94f6325357 ~/www]# gem install therubyracer -v '0.12.0'
Fetching: libv8-3.16.14.7.gem (100%)
Building native extensions.  This could take a while...
Successfully installed libv8-3.16.14.7
Fetching: therubyracer-0.12.0.gem (100%)
Building native extensions.  This could take a while...
ERROR:  Error installing therubyracer:
        ERROR: Failed to build gem native extension.

    /usr/local/rvm/rubies/ruby-2.1.2/bin/ruby extconf.rb
checking for main() in -lpthread... yes
creating Makefile

make "DESTDIR=" clean

make "DESTDIR="
compiling signature.cc
In file included from /usr/local/rvm/rubies/ruby-2.1.2/include/ruby-2.1.0/ruby/defines.h:68:0,
                 from /usr/local/rvm/rubies/ruby-2.1.2/include/ruby-2.1.0/ruby/ruby.h:29,
                 from /usr/local/rvm/rubies/ruby-2.1.2/include/ruby-2.1.0/ruby.h:33,
                 from rr.h:5,
                 from signature.cc:1:
/usr/local/rvm/rubies/ruby-2.1.2/include/ruby-2.1.0/ruby/missing.h:215:17: error: expected unqualified-id before '__extension__'
/usr/local/rvm/rubies/ruby-2.1.2/include/ruby-2.1.0/ruby/missing.h:215:17: error: expected unqualified-id before ')' token
Makefile:204: recipe for target 'signature.o' failed
make: *** [signature.o] Error 1

make failed, exit code 2

Gem files will remain installed in /usr/local/rvm/gems/ruby-2.1.2/gems/therubyracer-0.12.0 for inspection.
ignisf commented 9 years ago

The error messages point to an error in a Ruby header file, which leads me to believe that the issue might not be in therubyracer.

Searching for the issue pointed me to https://gist.github.com/rhenium/10718767