Skip to content

v8-sys fails to compile due to some problem with the build script #14

@netvl

Description

@netvl

I was trying to compile rq from sources but it failed on v8-sys with an error. I tried to compile v8-sys separately to check it and indeed it could be reproduced:

/tmp/v8-rs/v8-sys % cargo build
    Updating registry `https://github.com/rust-lang/crates.io-index`
 Downloading gcc v0.3.40
 Downloading clang-sys v0.11.1
 Downloading rustc-serialize v0.3.22
   Compiling rustc-serialize v0.3.22
   Compiling lazy_static v0.2.2
   Compiling bitflags v0.7.0
   Compiling glob v0.2.11
   Compiling pkg-config v0.3.8
   Compiling gcc v0.3.40
   Compiling strsim v0.5.2
   Compiling unicode-xid v0.0.3
   Compiling utf8-ranges v0.1.3
   Compiling bitflags v0.5.0
   Compiling log v0.3.6
   Compiling clang-sys v0.11.1
   Compiling libc v0.2.18
   Compiling nom v1.2.4
   Compiling memchr v0.1.11
   Compiling aho-corasick v0.5.3
   Compiling winapi v0.2.8
   Compiling cexpr v0.2.0
   Compiling winapi-build v0.1.1
   Compiling kernel32-sys v0.2.2
   Compiling thread-id v2.0.0
   Compiling thread_local v0.2.7
   Compiling syntex_pos v0.38.0
   Compiling term v0.4.4
   Compiling regex-syntax v0.3.9
   Compiling clang v0.13.0
   Compiling syntex_errors v0.38.0
   Compiling regex v0.1.80
   Compiling syntex_syntax v0.38.0
   Compiling docopt v0.6.86
   Compiling env_logger v0.3.5
   Compiling v8-api v0.7.0 (file:///tmp/v8-rs/v8-api)
   Compiling bindgen v0.19.1
   Compiling v8-sys v0.14.1 (file:///tmp/v8-rs/v8-sys)
error: failed to run custom build command for `v8-sys v0.14.1 (file:///tmp/v8-rs/v8-sys)`
process didn't exit successfully: `/tmp/v8-rs/v8-sys/target/debug/build/v8-sys-3dc4d834d583cc7e/build-script-build` (exit code: 101)
--- stdout
cargo:rerun-if-changed=src/v8-trampoline.h
cargo:rerun-if-changed=src/v8-glue.h
cargo:rerun-if-changed=src/v8-glue.cc
-I"/usr/include"
-I"/usr/local/include"
preferring static linking: true
cargo:rustc-link-search=native=/usr/lib
cargo:rustc-link-lib=v8
cargo:rustc-link-lib=icui18n
cargo:rustc-link-lib=icuuc
cargo:rustc-link-lib=icudata
cargo:rustc-link-lib=pthread
cargo:rustc-link-lib=dl
cargo:rustc-link-lib=m
cargo:rustc-link-lib=v8_libbase
using pkg-config for library v8
TARGET = Some("x86_64-unknown-linux-gnu")
OPT_LEVEL = Some("0")
PROFILE = Some("debug")
TARGET = Some("x86_64-unknown-linux-gnu")
debug=true opt-level=0
HOST = Some("x86_64-unknown-linux-gnu")
TARGET = Some("x86_64-unknown-linux-gnu")
TARGET = Some("x86_64-unknown-linux-gnu")
HOST = Some("x86_64-unknown-linux-gnu")
CXX_x86_64-unknown-linux-gnu = None
CXX_x86_64_unknown_linux_gnu = None
HOST_CXX = None
CXX = None
HOST = Some("x86_64-unknown-linux-gnu")
TARGET = Some("x86_64-unknown-linux-gnu")
HOST = Some("x86_64-unknown-linux-gnu")
CXXFLAGS_x86_64-unknown-linux-gnu = None
CXXFLAGS_x86_64_unknown_linux_gnu = None
HOST_CXXFLAGS = None
CXXFLAGS = None
running: "c++" "-O0" "-ffunction-sections" "-fdata-sections" "-g" "-m64" "-fPIC" "-I" "src" "-I" "/tmp/v8-rs/v8-sys/target/debug/build/v8-sys-2ded8b1ee7da9ab0/out" "-std=c++11" "-Wall" "-o" "/tmp/v8-rs/v8-sys/target/debug/build/v8-sys-2ded8b1ee7da9ab0/out/src/v8-glue.o" "-c" "src/v8-glue.cc"
ExitStatus(ExitStatus(0))
TARGET = Some("x86_64-unknown-linux-gnu")
TARGET = Some("x86_64-unknown-linux-gnu")
HOST = Some("x86_64-unknown-linux-gnu")
AR_x86_64-unknown-linux-gnu = None
AR_x86_64_unknown_linux_gnu = None
HOST_AR = None
AR = None
TARGET = Some("x86_64-unknown-linux-gnu")
TARGET = Some("x86_64-unknown-linux-gnu")
running: "ar" "crs" "/tmp/v8-rs/v8-sys/target/debug/build/v8-sys-2ded8b1ee7da9ab0/out/libv8sysglue.a" "/tmp/v8-rs/v8-sys/target/debug/build/v8-sys-2ded8b1ee7da9ab0/out/src/v8-glue.o"
ExitStatus(ExitStatus(0))
TARGET = Some("x86_64-unknown-linux-gnu")
cargo:rustc-link-lib=static=v8sysglue
cargo:rustc-link-search=native=/tmp/v8-rs/v8-sys/target/debug/build/v8-sys-2ded8b1ee7da9ab0/out
TARGET = Some("x86_64-unknown-linux-gnu")
cargo:rustc-link-lib=stdc++
V8_SOURCE not set, searching system paths

--- stderr
/usr/include/v8.h:18:10: fatal error: 'stddef.h' file not found
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: ()', ../src/libcore/result.rs:837
note: Run with `RUST_BACKTRACE=1` for a backtrace.

Naturally, I have v8 compiled and installed. I'm using Archlinux (x86_64), so v8 is installed from AUR. I also have both gcc and clang installed:

% gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1/lto-wrapper
Target: x86_64-pc-linux-gnu
Configured with: /build/gcc-multilib/src/gcc/configure --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://bugs.archlinux.org/ --enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++ --enable-shared --enable-threads=posix --enable-libmpx --with-system-zlib --with-isl --enable-__cxa_atexit --disable-libunwind-exceptions --enable-clocale=gnu --disable-libstdcxx-pch --disable-libssp --enable-gnu-unique-object --enable-linker-build-id --enable-lto --enable-plugin --enable-install-libiberty --with-linker-hash-style=gnu --enable-gnu-indirect-function --enable-multilib --disable-werror --enable-checking=release
Thread model: posix
gcc version 6.2.1 20160830 (GCC)
% clang -v
clang version 3.9.0 (tags/RELEASE_390/final)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /usr/bin
Found candidate GCC installation: /usr/bin/../lib/gcc/x86_64-pc-linux-gnu/6.2.1
Found candidate GCC installation: /usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/6.2.1
Found candidate GCC installation: /usr/lib/gcc/x86_64-pc-linux-gnu/6.2.1
Found candidate GCC installation: /usr/lib64/gcc/x86_64-pc-linux-gnu/6.2.1
Selected GCC installation: /usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/6.2.1
Candidate multilib: .;@m64
Candidate multilib: 32;@m32
Selected multilib: .;@m64

Although I don't think that clang is needed since v8-sys seems to be using c++ which is an alias to GCC.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions