无法将gRPC作为依赖项添加到macOS上的其他Bazel项目

时间:2019-05-17 04:15:07

标签: protocol-buffers grpc bazel

我正在macOS上使用Bazel构建我的C ++项目,并且我将gRPC添加为部门之一

仅供参考,我在Linux上成功使用相同的设置进行了构建,但是在macOS上对我而言却失败了。

WORKSPACE

git_repository(
  name = "com_github_grpc_grpc",
  remote = "https://github.com/grpc/grpc",
  tag = "v1.20.1"
)

load("@com_github_grpc_grpc//bazel:grpc_deps.bzl", "grpc_deps")
grpc_deps()

以及我模块的构建文件

a.BUILD

cc_library(
  name = "s12",
  srcs = glob(
    ["**/*.cc"],
  ),
  hdrs = glob(
    ["**/*.h",],
  ),
  deps = [
    "@com_github_grpc_grpc//:grpc++",
    "@com_google_protobuf//:protobuf",
  ],
)

在链接阶段我遇到以下错误:

[libprotobuf ERROR external/com_github_sc_protobuf/src/google/protobuf/descriptor_database.cc:58] File already exists in database: google/protobuf/descriptor.proto
[libprotobuf FATAL external/com_github_sc_protobuf/src/google/protobuf/descriptor.cc:1370] CHECK failed: GeneratedDatabase()->Add(encoded_file_descriptor, size): 
libc++abi.dylib: terminating with uncaught exception of type google::protobuf::FatalException: CHECK failed: GeneratedDatabase()->Add(encoded_file_descriptor, size): 
external/bazel_tools/tools/test/test-setup.sh: line 310: 63268 Abort trap: 6           "${TEST_PATH}" "$@" 2>&1

显然,某些文件被多次包含,但是我不知道为什么。

0 个答案:

没有答案