google / fleetbench

Benchmarking suite for Google workloads
Apache License 2.0
111 stars 9 forks source link

C++14 requirement error using Bazel 6.3.2 and earlier #18

Closed jty2 closed 10 months ago

jty2 commented 10 months ago

Since 43d9a766384eec009781c556787d492d094b5e24, C++14 is needed to build absl.

When using Bazel 6.3.2, I get this error when building fleetbench/proto:proto_benchmark

external/com_google_absl/absl/base/policy_checks.h:79:2: error: "C++ versions less than C++14 are not supported."

because Bazel 6.3.2 explicitly sets -std=c++0x, so it will not work.

I think this means the minimum requirement is now Bazel 6.4.0 because it sets -std=c++14 due to #https://github.com/bazelbuild/bazel/pull/19794.

Would you please update the Fleetbench documentation to reflect this requirement, or provide a workaround for Bazel 6.3.2 and earlier?

Thank you.

rjogrady commented 10 months ago

We weren't specifying the c++ version for the host toolchain in our .bazelrc, which is used to compile the protobuf compiler.

Should be fixed in 66fc3a5726d7fb43a1eebf7b6f732cdc2acb7c90

Thanks for mentioning it!