Using:
Ruby: 2.1.1 Rails: 4 OS: Debian Wheezy
Short problem story:
I installed Python 2.7 and now my bundle install
won't succeed anymore.
It got stuck at:
Using jquery-rails (3.1.1) Gem::Ext::BuildError: ERROR: Failed to build gem native extension.
Long problem story:
I wanted to install 'therubyracer', because I got this error:
ExecJS::RuntimeUnavailable: Could not find a JavaScript runtime.
During that installation the following error occurred:
developer@vm2458:~/srv/dash/dashboard$ gem install 'therubyracer' Fetching: ref-1.0.5.gem (100%) Successfully installed ref-1.0.5 Fetching: libv8-3.16.14.3.gem (100%) Building native extensions. This could take a while... ERROR: Error installing therubyracer: ERROR: Failed to build gem native extension. /home/developer/.rvm/rubies/ruby-2.1.1/bin/ruby extconf.rb creating Makefile /home/developer/.rvm/gems/ruby-2.1.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 (RuntimeError) from /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/ext/libv8/builder.rb:42:in `block in build_libv8!' from /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/ext/libv8/builder.rb:40:in `chdir' from /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/ext/libv8/builder.rb:40:in `build_libv8!' from /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/ext/libv8/location.rb:24:in `install!' from extconf.rb:7:in `' extconf failed, exit code 1 Gem files will remain installed in /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3 for inspection. Results logged to /home/developer/.rvm/gems/ruby-2.1.1/extensions/x86-linux/2.1.0/libv8-3.16.14.3/gem_make.out
So I thought i should install Python 2.
Google brought me here: https://gist.github.com/whop/2659457
Everything seemed going well until I got back to the bundle install
.
developer@vm2458:~/srv/dash/dashboard$ bundle install Fetching gem metadata from https://rubygems.org/.......... Fetching additional metadata from https://rubygems.org/.. Resolving dependencies... (...) Using jquery-rails (3.1.1) Gem::Ext::BuildError: ERROR: Failed to build gem native extension. /home/developer/.rvm/rubies/ruby-2.1.1/bin/ruby extconf.rb creating Makefile Compiling v8 for ia32 Using python 2.7.3 Using compiler: /usr/bin/g++ g++: internal compiler error: Killed (program cc1plus) Please submit a full bug report, with preprocessed source if appropriate. See for instructions. make[1]: *** [/home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/hydrogen-instructions.o] Error 4 make: *** [ia32.release] Error 2 GYP_GENERATORS=make \ build/gyp/gyp --generator-output="out" build/all.gyp \ -Ibuild/standalone.gypi --depth=. \ -Dv8_target_arch=ia32 \ -S.ia32 -Dv8_enable_backtrace=1 -Dv8_can_use_vfp2_instructions=true -Darm_fpu=vfpv2 -Dv8_can_use_vfp3_instructions=true -Darm_fpu=vfpv3 make[1]: Entering directory `/home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out' CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/preparser_lib/src/allocation.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/preparser_lib/src/atomicops_internals_x86_gcc.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/preparser_lib/src/bignum.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/preparser_lib/src/bignum-dtoa.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/preparser_lib/src/cached-powers.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/preparser_lib/src/conversions.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/preparser_lib/src/diy-fp.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/preparser_lib/src/dtoa.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/preparser_lib/src/fast-dtoa.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/preparser_lib/src/fixed-dtoa.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/preparser_lib/src/once.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/preparser_lib/src/preparse-data.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/preparser_lib/src/preparser.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/preparser_lib/src/preparser-api.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/preparser_lib/src/scanner.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/preparser_lib/src/strtod.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/preparser_lib/src/token.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/preparser_lib/src/unicode.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/preparser_lib/src/utils.o AR(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/tools/gyp/libpreparser_lib.a CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/preparser/preparser/preparser-process.o LINK(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/preparser CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/accessors.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/allocation.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/api.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/assembler.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/ast.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/atomicops_internals_x86_gcc.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/bignum-dtoa.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/bignum.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/bootstrapper.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/builtins.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/cached-powers.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/checks.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/circular-queue.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/code-stubs.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/code-stubs-hydrogen.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/codegen.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/compilation-cache.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/compiler.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/contexts.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/conversions.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/counters.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/cpu-profiler.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/data-flow.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/date.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/dateparser.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/debug-agent.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/debug.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/deoptimizer.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/disassembler.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/diy-fp.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/dtoa.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/elements-kind.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/elements.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/execution.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/extensions/externalize-string-extension.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/extensions/gc-extension.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/extensions/statistics-extension.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/factory.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/fast-dtoa.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/fixed-dtoa.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/flags.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/frames.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/full-codegen.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/func-name-inferrer.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/gdb-jit.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/global-handles.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/handles.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/heap-profiler.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/heap.o CXX(target) /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/v8_base/src/hydrogen-instructions.o make[1]: Leaving directory `/home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out' /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/ext/libv8/location.rb:36:in `block in verify_installation!': libv8 did not install properly, expected binary v8 archive '/home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/vendor/v8/out/ia32.release/obj.target/tools/gyp/libv8_base.a'to exist, but it was not found (Libv8::Location::Vendor::ArchiveNotFound) from /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/ext/libv8/location.rb:35:in `each' from /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/ext/libv8/location.rb:35:in `verify_installation!' from /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3/ext/libv8/location.rb:26:in `install!' from extconf.rb:7:in `' extconf failed, exit code 1 Gem files will remain installed in /home/developer/.rvm/gems/ruby-2.1.1/gems/libv8-3.16.14.3 for inspection. Results logged to /home/developer/.rvm/gems/ruby-2.1.1/extensions/x86-linux/2.1.0/libv8-3.16.14.3/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.
So I ran gem install libv8 -v '3.16.14.3'
to make sure it succeeded:
developer@vm2458:~/srv/dash/dashboard$ gem install libv8 -v '3.16.14.3' Building native extensions. This could take a while... developer@vm2458:~/srv/dash/dashboard$
Looks good, right?
However, the error persists.
This thread advised to install therubyracer manually, this won't work for me for some reason. Maybe because I'm using Ruby 2.1.1? I don't know.
Can anyone help me fix this or point me in the (possible) right direction?
Thanks in advance!