bazelbuild / bazelbuild/rules_rust
Could not find `protoc` installation with dependency using prost
- Dominant language
- Starlark
- Stars
- 843
- Forks
- 651
- Avg merge
- 2d 18h
- Merged PRs (30d)
- 15
Description
I'm trying to use [`bigtable-rs`](https://docs.rs/bigtable_rs) in my Bazel project. Currently, my build is failing with the error at the end of the message.
I have set up the prost dependencies as described here: http://bazelbuild.github.io/rules_rust/rust_proto.html#prost-setup. But I'm still getting the same error. Am I not seeing some documentation? I also don't see anything about providing protoc to a dependency, only to build protos defined in my project's BUILD rules.
```
ERROR: /path/external/crate_index__prost-wkt-types-0.4.2/BUILD.bazel:98:19: Running Cargo build script prost-wkt-types failed: (Exit 1): cargo_build_script_runner failed: error executing command (from target @crate_index__prost-wkt-types-0.4.2//:prost-wkt-types_build_script) bazel-out/k8-opt-exec-2B5CBBC6/bin/external/rules_rust/cargo/cargo_build_script_runner/cargo_build_script_runner ... (remaining 10 arguments skipped)
Use --sandbox_debug to see verbose messages from the sandbox and retain the sandbox build root for debugging
Build script process failed with exit code 101
--stdout:
--stderr:
thread 'main' panicked at 'Could not find `protoc` installation and this build crate cannot proceed without
this knowledge. If `protoc` is installed and this crate had trouble finding
it, you can set the `PROTOC` environment variable with the specific path to your
installed `protoc` binary.If you're on debian, try `apt-get install protobuf-compiler` or download it from https://github.com/protocolbuffers/protobuf/releases
For more information: https://docs.rs/prost-build/#sourcing-protoc
', external/crate_index__prost-build-0.11.9/src/lib.rs:1457:10
stack backtrace:
0: 0x55a4c90d8871 - std::backtrace_rs::backtrace::libunwind::trace::h6aeaf83abc038fe6
at /rustc/8ede3aae28fe6e4d52b38157d7bfe0d3bceef225/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5
1: 0x55a4c90d8871 - std::backtrace_rs::backtrace::trace_unsynchronized::h4f9875212db0ad97
at /rustc/8ede3aae28fe6e4d52b38157d7bfe0d3bceef225/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
2: 0x55a4c90d8871 - std::sys_common::backtrace::_print_fmt::h3f820027e9c39d3b
at /rustc/8ede3aae28fe6e4d52b38157d7bfe0d3bceef225/library/std/src/sys_common/backtrace.rs:65:5
3: 0x55a4c90d8871 - ::fmt::hded4932df41373b3
at /rustc/8ede3aae28fe6e4d52b38157d7bfe0d3bceef225/library/std/src/sys_common/backtrace.rs:44:22
4: 0x55a4c90fa5df - core::fmt::rt::Argument::fmt::hc8ead7746b2406d6
at /rustc/8ede3aae28fe6e4d52b38157d7bfe0d3bceef225/library/core/src/fmt/rt.rs:138:9
5: 0x55a4c90fa5df - core::fmt::write::hb1cb56105a082ad9
at /rustc/8ede3aae28fe6e4d52b38157d7bfe0d3bceef225/library/core/src/fmt/mod.rs:1094:21
6: 0x55a4c90d6241 - std::io::Write::write_fmt::h797fda7085c97e57
at /rustc/8ede3aae28fe6e4d52b38157d7bfe0d3bceef225/library/std/src/io/mod.rs:1713:15
7: 0x55a4c90d8685 - std::sys_common::backtrace::_print::h492d3c92d7400346
at /rustc/8ede3aae28fe6e4d52b38157d7bfe0d3bceef225/library/std/src/sys_common/backtrace.rs:47:5
8: 0x55a4c90d8685 - std::sys_common::backtrace::print::hf74aa2eef05af215
at /rustc/8ede3aae28fe6e4d52b38157d7bfe0d3bceef225/library/std/src/sys_common/backtrace.rs:34:9
9: 0x55a4c90d9a87 - std::panicking::default_hook::{{closure}}::h8cad394227ea3de8
10: 0x55a4c90d9874 - std::panicking::default_hook::h249cc184fec99a8a
at /rustc/8ede3aae28fe6e4d52b38157d7bfe0d3bceef225/library/std/src/panicking.rs:288:9
11: 0x55a4c90d9f5c - std::panicking::rust_panic_with_hook::h82ebcd5d5ed2fad4
at /rustc/8ede3aae28fe6e4d52b38157d7bfe0d3bceef225/library/std/src/panicking.rs:705:13
12: 0x55a4c90d9e57 - std::panicking::begin_panic_handler::{{closure}}::h810bed8ecbe66f1a
at /rustc/8ede3aae28fe6e4d52b38157d7bfe0d3bceef225/library/std/src/panicking.rs:597:13
13: 0x55a4c90d8ca6 - std::sys_common::backtrace::__rust_end_short_backtrace::h1410008071796261
at /rustc/8ede3aae28fe6e4d52b38157d7bfe0d3bceef225/library/std/src/sys_common/backtrace.rs:151:18
14: 0x55a4c90d9ba2 - rust_begin_unwind
at /rustc/8ede3aae28fe6e4d52b38157d7bfe0d3bceef225/library/std/src/panicking.rs:593:5
15: 0x55a4c8e6d133 - core::panicking::panic_fmt::ha0a42a25e0cf258d
at /rustc/8ede3aae28fe6e4d52b38157d7bfe0d3bceef225/library/core/src/panicking.rs:67:14
16: 0x55a4c8e6d0f3 - core::panicking::panic_display::h60c880df735e288b
at /rustc/8ede3aae28fe6e4d52b38157d7bfe0d3bceef225/library/core/src/panicking.rs:150:5
17: 0x55a4c8e6d0f3 - core::panicking::panic_str::h5373135dfe2830d2
at /rustc/8ede3aae28fe6e4d52b38157d7bfe0d3bceef225/library/core/src/panicking.rs:134:5
18: 0x55a4c8e6d0f3 - core::option::expect_failed::heb94071153f8430b
at /rustc/8ede3aae28fe6e4d52b38157d7bfe0d3bceef225/library/core/src/option.rs:1932:5
19: 0x55a4c8e8c9e3 - prost_build::protoc_from_env::hfae600a3dadeadc2
20: 0x55a4c8e819d1 - prost_build::Config::compile_protos::h6db92f5bb12d27ff
21: 0x55a4c8e812ef - build_script_build::build::h468b7e66fbe11460
22: 0x55a4c8e80c3a - build_script_build::main::h7a1dfe792bd4b7ce
23: 0x55a4c8e72df3 - std::sys_common::backtrace::__rust_begin_short_backtrace::heacb7f989c653b18
24: 0x55a4c8e72e09 - std::rt::lang_start::{{closure}}::h3240f030e119ca4a
25: 0x55a4c90d2695 - core::ops::function::impls:: for &F>::call_once::h5ce27e764c284c0a
at /rustc/8ede3aae28fe6e4d52b38157d7bfe0d3bceef225/library/core/src/ops/function.rs:284:13
26: 0x55a4c90d2695 - std::panicking::try::do_call::h4c1fc390ae241991
at /rustc/8ede3aae28fe6e4d52b38157d7bfe0d3bceef225/library/std/src/panicking.rs:500:40
27: 0x55a4c90d2695 - std::panicking::try::h4d36e7eaed86af72
at /rustc/8ede3aae28fe6e4d52b38157d7bfe0d3bceef225/library/std/src/panicking.rs:464:19
28: 0x55a4c90d2695 - std::panic::catch_unwind::h41cfb4dd65282b1e
at /rustc/8ede3aae28fe6e4d52b38157d7bfe0d3bceef225/library/std/src/panic.rs:142:14
29: 0x55a4c90d2695 - std::rt::lang_start_internal::{{closure}}::hfed411c1c5fdb925
at /rustc/8ede3aae28fe6e4d52b38157d7bfe0d3bceef225/library/std/src/rt.rs:148:48
30: 0x55a4c90d2695 - std::panicking::try::do_call::h6893f6f32a464342
at /rustc/8ede3aae28fe6e4d52b38157d7bfe0d3bceef225/library/std/src/panicking.rs:500:40
31: 0x55a4c90d2695 - std::panicking::try::h52b7102f469a0567
at /rustc/8ede3aae28fe6e4d52b38157d7bfe0d3bceef225/library/std/src/panicking.rs:464:19
32: 0x55a4c90d2695 - std::panic::catch_unwind::h62120054677916b5
at /rustc/8ede3aae28fe6e4d52b38157d7bfe0d3bceef225/library/std/src/panic.rs:142:14
33: 0x55a4c90d2695 - std::rt::lang_start_internal::hd66bf6b7da144005
at /rustc/8ede3aae28fe6e4d52b38157d7bfe0d3bceef225/library/std/src/rt.rs:148:20
34: 0x55a4c8e81665 - main
35: 0x7f4115e29d90 -
36: 0x7f4115e29e40 - __libc_start_main
37: 0x55a4c8e6d835 - _start
38: 0x0 -
INFO: Elapsed time: 0.572s, Critical Path: 0.07s
INFO: 7 processes: 7 internal.
FAILED: Build did NOT complete successfully
//query:lib_test FAILED TO BUILD
Executed 0 out of 1 test: 1 fails to build.
iBazel [6:35PM]: Build error: exit status 1
```
Contributor guide
Assessment
This issue has not been assessed yet.