Skip to content
This repository was archived by the owner on Dec 4, 2023. It is now read-only.
This repository was archived by the owner on Dec 4, 2023. It is now read-only.

Unable to compile dependency libv8 after upgrading to XCode 7.3 #403

@scott-knight

Description

@scott-knight

After upgrading to Xcode 7.3 yesterday, libv8 gem version 3.16.14.13 will not compile. This is the error:

Gem::Ext::BuildError: ERROR: Failed to build gem native extension. current directory: /usr/local/var/rbenv/versions/2.3.0/gemsets/portal4x/gems/libv8-3.16.14.13/ext/libv8 /usr/local/var/rbenv/versions/2.3.0/bin/ruby -r ./siteconf20160324-39259-td12rh.rb extconf.rb creating Makefile Compiling v8 for x64 Using python 2.7.11 Using compiler: /usr/bin/c++ (clang version 7.3.0) /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: file: /usr/local/var/rbenv/versions/2.3.0/gemsets/portal4x/gems/libv8-3.16.14.13/vendor/v8/out/x64.release/obj.target/preparser_lib/src/atomicops_internals_x86_gcc.o has no symbols In file included from ../src/accessors.cc:28: In file included from ../src/v8.h:60: In file included from ../src/objects-inl.h:38: In file included from ../src/elements.h:32: ../src/objects.h:5252:44: error: shifting a negative signed value is undefined [-Werror,-Wshift-negative-value] static const int kElementsKindMask = (-1 << kElementsKindShift) & ~~ ^ ../src/objects.h:7386:36: error: shifting a negative signed value is undefined [-Werror,-Wshift-negative-value](~kMaxCachedArrayIndexLength << kArrayIndexHashLengthShift) | ~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ 2 errors generated. make[1]: **\* [/usr/local/var/rbenv/versions/2.3.0/gemsets/portal4x/gems/libv8-3.16.14.13/vendor/v8/out/x64.release/obj.target/v8_base/src/accessors.o] Error 1 make: **\* [x64.release] Error 2 /usr/local/var/rbenv/versions/2.3.0/gemsets/portal4x/gems/libv8-3.16.14.13/ext/libv8/location.rb:36:in 'block in verify_installation!': libv8 did not install properly, expected binary v8 archive '/usr/local/var/rbenv/versions/2.3.0/gemsets/portal4x/gems/libv8-3.16.14.13/vendor/v8/out/x64.release/obj.target/tools/gyp/libv8_base.a'to exist, but it was not found (Libv8::Location::Vendor::ArchiveNotFound) from /usr/local/var/rbenv/versions/2.3.0/gemsets/portal4x/gems/libv8-3.16.14.13/ext/libv8/location.rb:35:in 'each' from /usr/local/var/rbenv/versions/2.3.0/gemsets/portal4x/gems/libv8-3.16.14.13/ext/libv8/location.rb:35:in 'verify_installation!' from /usr/local/var/rbenv/versions/2.3.0/gemsets/portal4x/gems/libv8-3.16.14.13/ext/libv8/location.rb:26:in 'install!' from extconf.rb:7:in '' GYP_GENERATORS=make \ build/gyp/gyp --generator-output="out" build/all.gyp \ -Ibuild/standalone.gypi --depth=. \ -Dv8_target_arch=x64 \ -S.x64 -Dv8_enable_backtrace=1 -Dv8_can_use_vfp2_instructions=true -Darm_fpu=vfpv2 -Dv8_can_use_vfp3_instructions=true -Darm_fpu=vfpv3 -Dwerror='' CXX(target) /usr/local/var/rbenv/versions/2.3.0/gemsets/portal4x/gems/libv8-3.16.14.13/vendor/v8/out/x64.release/obj.target/preparser_lib/src/allocation.o CXX(target) /usr/local/var/rbenv/versions/2.3.0/gemsets/portal4x/gems/libv8-3.16.14.13/vendor/v8/out/x64.release/obj.target/preparser_lib/src/atomicops_internals_x86_gcc.o CXX(target) /usr/local/var/rbenv/versions/2.3.0/gemsets/portal4x/gems/libv8-3.16.14.13/vendor/v8/out/x64.release/obj.target/preparser_lib/src/bignum.o CXX(target) /usr/local/var/rbenv/versions/2.3.0/gemsets/portal4x/gems/libv8-3.16.14.13/vendor/v8/out/x64.release/obj.target/preparser_lib/src/bignum-dtoa.o CXX(target) /usr/local/var/rbenv/versions/2.3.0/gemsets/portal4x/gems/libv8-3.16.14.13/vendor/v8/out/x64.release/obj.target/preparser_lib/src/cached-powers.o CXX(target) /usr/local/var/rbenv/versions/2.3.0/gemsets/portal4x/gems/libv8-3.16.14.13/vendor/v8/out/x64.release/obj.target/preparser_lib/src/conversions.o CXX(target) /usr/local/var/rbenv/versions/2.3.0/gemsets/portal4x/gems/libv8-3.16.14.13/vendor/v8/out/x64.release/obj.target/preparser_lib/src/diy-fp.o CXX(target) /usr/local/var/rbenv/versions/2.3.0/gemsets/portal4x/gems/libv8-3.16.14.13/vendor/v8/out/x64.release/obj.target/preparser_lib/src/dtoa.o CXX(target) /usr/local/var/rbenv/versions/2.3.0/gemsets/portal4x/gems/libv8-3.16.14.13/vendor/v8/out/x64.release/obj.target/preparser_lib/src/fast-dtoa.o CXX(target) /usr/local/var/rbenv/versions/2.3.0/gemsets/portal4x/gems/libv8-3.16.14.13/vendor/v8/out/x64.release/obj.target/preparser_lib/src/fixed-dtoa.o CXX(target) /usr/local/var/rbenv/versions/2.3.0/gemsets/portal4x/gems/libv8-3.16.14.13/vendor/v8/out/x64.release/obj.target/preparser_lib/src/once.o CXX(target) /usr/local/var/rbenv/versions/2.3.0/gemsets/portal4x/gems/libv8-3.16.14.13/vendor/v8/out/x64.release/obj.target/preparser_lib/src/preparse-data.o CXX(target) /usr/local/var/rbenv/versions/2.3.0/gemsets/portal4x/gems/libv8-3.16.14.13/vendor/v8/out/x64.release/obj.target/preparser_lib/src/preparser.o CXX(target) /usr/local/var/rbenv/versions/2.3.0/gemsets/portal4x/gems/libv8-3.16.14.13/vendor/v8/out/x64.release/obj.target/preparser_lib/src/preparser-api.o CXX(target) /usr/local/var/rbenv/versions/2.3.0/gemsets/portal4x/gems/libv8-3.16.14.13/vendor/v8/out/x64.release/obj.target/preparser_lib/src/scanner.o CXX(target) /usr/local/var/rbenv/versions/2.3.0/gemsets/portal4x/gems/libv8-3.16.14.13/vendor/v8/out/x64.release/obj.target/preparser_lib/src/strtod.o CXX(target) /usr/local/var/rbenv/versions/2.3.0/gemsets/portal4x/gems/libv8-3.16.14.13/vendor/v8/out/x64.release/obj.target/preparser_lib/src/token.o CXX(target) /usr/local/var/rbenv/versions/2.3.0/gemsets/portal4x/gems/libv8-3.16.14.13/vendor/v8/out/x64.release/obj.target/preparser_lib/src/unicode.o CXX(target) /usr/local/var/rbenv/versions/2.3.0/gemsets/portal4x/gems/libv8-3.16.14.13/vendor/v8/out/x64.release/obj.target/preparser_lib/src/utils.o LIBTOOL-STATIC /usr/local/var/rbenv/versions/2.3.0/gemsets/portal4x/gems/libv8-3.16.14.13/vendor/v8/out/x64.release/libpreparser_lib.a CXX(target) /usr/local/var/rbenv/versions/2.3.0/gemsets/portal4x/gems/libv8-3.16.14.13/vendor/v8/out/x64.release/obj.target/preparser/preparser/preparser-process.o LINK(target) /usr/local/var/rbenv/versions/2.3.0/gemsets/portal4x/gems/libv8-3.16.14.13/vendor/v8/out/x64.release/preparser CXX(target) /usr/local/var/rbenv/versions/2.3.0/gemsets/portal4x/gems/libv8-3.16.14.13/vendor/v8/out/x64.release/obj.target/v8_base/src/accessors.o extconf failed, exit code 1 Gem files will remain installed in /usr/local/var/rbenv/versions/2.3.0/gemsets/portal4x/gems/libv8-3.16.14.13 for inspection. Results logged to /usr/local/var/rbenv/versions/2.3.0/gemsets/portal4x/extensions/x86_64-darwin-15/2.3.0-static/libv8-3.16.14.13/gem_make.out

However, libv8 version 4.5.95.5 compiles just fine.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions