cloudflare / quiche

🥧 Savoury implementation of the QUIC transport protocol and HTTP/3
https://docs.quic.tech/quiche/
BSD 2-Clause "Simplified" License
9.4k stars 709 forks source link

build fails because of empty boringssl directory #10

Closed nils-ohlmeier closed 5 years ago

nils-ohlmeier commented 5 years ago

Trying to follow the basic initial steps from the README results in this for me: cargo build --examples Compiling memchr v2.1.3 Compiling regex v1.1.0 Compiling proc-macro2 v0.4.26 Compiling smallvec v0.6.8 Compiling serde v1.0.85 Compiling quiche v0.1.0-alpha1 (/Users/nilsohlmeier/src/quiche) Compiling mio v0.6.16 error: failed to run custom build command forquiche v0.1.0-alpha1 (/Users/nilsohlmeier/src/quiche) process didn't exit successfully:/Users/nilsohlmeier/src/quiche/target/debug/build/quiche-bf91909ae6af1da4/build-script-build` (exit code: 101) --- stdout running: "cmake" "/Users/nilsohlmeier/src/quiche/deps/boringssl" "-DCMAKE_INSTALL_PREFIX=/Users/nilsohlmeier/src/quiche/target/debug/build/quiche-cc48053fc76c9015/out" "-DCMAKE_C_FLAGS= -ffunction-sections -fdata-sections -fPIC -m64" "-DCMAKE_C_COMPILER=/usr/bin/cc" "-DCMAKE_CXX_FLAGS= -ffunction-sections -fdata-sections -fPIC -m64" "-DCMAKE_CXX_COMPILER=/usr/bin/c++" "-DCMAKE_BUILD_TYPE=Debug"

--- stderr CMake Error: The source directory "/Users/nilsohlmeier/src/quiche/deps/boringssl" does not appear to contain CMakeLists.txt. Specify --help for usage, or press the help button on the CMake GUI. thread 'main' panicked at ' command did not execute successfully, got: exit code: 1

build script failed, must exit now', /Users/nilsohlmeier/.cargo/registry/src/github.com-1ecc6299db9ec823/cmake-0.1.35/src/lib.rs:778:5 note: Run with RUST_BACKTRACE=1 for a backtrace.

warning: build failed, waiting for other jobs to finish... error: build failed`

Apparently the boringssl directory is completely empty: ls -la deps/boringssl/ total 0 drwxr-xr-x 2 nilsohlmeier staff 64 Jan 22 22:55 . drwxr-xr-x 3 nilsohlmeier staff 96 Jan 22 22:55 ..

cmake and go are available on the system. Is there maybe a git submodule step missing?

LPardue commented 5 years ago

git submodule update -- init should fix this issue

ghedo commented 5 years ago

Yep, the build instructions failed to mention this, but you need to update submodules as @LPardue said (though note that it's --init not -- init).

In any case I updated the README now to mention this as well. Thanks for reporting @nils-ohlmeier!