Last Updated: August 06, 2018
·
2.409K
· usiegj00

mini_racer 0.1.9 ERROR: Failed to build gem native extension

This is fixed in mini_racer 0.2.0. Update it with (unlock the gem to a version in the Gemfile and then):

bundle update mini_racer

Full error for posterity:

Fetching mini_racer 0.1.9
Installing mini_racer 0.1.9 with native extensions
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

    current directory: .rvm/gems/ruby-2.4.0/gems/mini_racer-0.1.9/ext/mini_racer_extension
.rvm/rubies/ruby-2.4.0/bin/ruby -r ./siteconf20180806-51295-33o6pp.rb extconf.rb
checking for -lpthread... yes
checking for -lobjc... yes
creating Makefile

current directory: .rvm/gems/ruby-2.4.0/gems/mini_racer-0.1.9/ext/mini_racer_extension
make "DESTDIR=" clean

current directory: .rvm/gems/ruby-2.4.0/gems/mini_racer-0.1.9/ext/mini_racer_extension
make "DESTDIR="
compiling mini_racer_extension.cc
clang: warning: argument unused during compilation: '-rdynamic' [-Wunused-command-line-argument]
mini_racer_extension.cc:471:35: error: no member named 'IdleNotification' in 'v8::Isolate'
    return isolate_info->isolate->IdleNotification(NUM2INT(idle_time_in_ms)) ? Qtrue : Qfalse;
           ~~~~~~~~~~~~~~~~~~~~~  ^
mini_racer_extension.cc:677:6: error: no member named 'TerminateExecution' in 'v8::V8'
        V8::TerminateExecution(args->GetIsolate());
        ~~~~^
mini_racer_extension.cc:701:11: error: no type named 'TerminateExecution' in 'v8::V8'
      V8::TerminateExecution(isolate);
      ~~~~^
mini_racer_extension.cc:905:9: error: no type named 'TerminateExecution' in 'v8::V8'
    V8::TerminateExecution(isolate);
    ~~~~^
4 errors generated.
make: *** [mini_racer_extension.o] Error 1

make failed, exit code 2

Gem files will remain installed in .rvm/gems/ruby-2.4.0/gems/mini_racer-0.1.9 for inspection.
Results logged to .rvm/gems/ruby-2.4.0/extensions/x86_64-darwin-16/2.4.0/mini_racer-0.1.9/gem_make.out

An error occurred while installing mini_racer (0.1.9), and Bundler cannot continue.
Make sure that gem install mini_racer -v '0.1.9' succeeds before bundling.