2017-06-06 1 views
1

Ich versuche, eine cc_grpc_library in definierten grpc/bazel/cc_grpc_library.bzl wie unten zu bauen:cc_grpc_library für bazel 0.5.1 nicht aufgrund zwingender "files_to_run" Anbieter fehlt

cc_grpc_library(
    name = "test", 
    srcs = [ "test.proto" ], 
    deps = [], 
    proto_only = False, 
    well_known_protos = "@com_google_protobuf//:well_known_protos", 
    generate_mock = False, 
    use_external = True) 

aber es funktioniert nicht aufgrund

'@grpc//:grpc_cpp_plugin' does not have mandatory provider 'files_to_run'. 

Ich benutze Bazel 0.5.1 und neuesten von Grpc Repository. Keine lokalen Änderungen an Bazel oder Grpc.

Siehe this simple example.

Auch zu beachten, Bazel 0.4.5 funktioniert gut.

+0

Haben Sie lokale Änderungen? '@grpc //: grpc_proto_plugin' ist definiert in [' //:BUILD'](https://github.com/grpc/grpc/blob/65b2ff9418b0cd97ff7d8bda2409ea6c7937b9a0/BUILD#L206), und das ['grpc_proto_plugin' ist ein Makro Wrapping eines cc_binary] (https://github.com/grpc/grpc/blob/65b2ff9418b0cd97ff7d8bda2409ea6c7937b9a0/bazel/grpc_build_system.bzl#L46), das einen 'files_to_run'-Provider haben sollte. –

Antwort

1

Wow, das war lustig Debugging :) Ich denke, Sie könnten ein Problem für diese Datei, es ist ein regelmäßiger Fehler. So funktioniert das mit Bazel 0.4.5, nicht mit Bazel 0.5.0 und 0.5.1, und es funktioniert wieder mit Bazel @ HEAD. Es wurde von this commit behoben, dann gebrochen, und dann "durch Zufall" von this commit behoben.

Jetzt bazel @ HEAD wird das Projekt nicht erstellen, aber es scheint, als wäre es ein Fehler im Projekt selbst, kein Bazel Bug mehr.

+0

Sieht aus wie 0.5.2 das Problem behoben. Vielen Dank – Fardream