如何巩固Bazel构建对象的顺序

时间:2018-01-29 19:19:52

标签: c++ bazel

我正在使用Google Bazel构建程序。当我进行影响多个文件的大型更改并重建时,Bazel会随机选择一个文件来显示错误消息。这导致很多编辑器流失,我不断失去我的背景。我在一个文件中修复了一个编译错误,然后重建,但我无法看到修复是否有效,因为Bazel决定在其他文件上失败。

特别是如果我有目标

cc_binary(name='foo',
          srcs=['bar.cc', 'qux.cc'])

然后我运行$ bazel build :foo然后我会收到bar.cc的错误消息。如果我再次运行而不进行任何更改,那么我将得到(可能)错误消息。qux.cc。我不知道控制随机性的因素。也许这不仅仅是因为我的卑微自我等凡人所知?

有没有办法巩固Bazel构建文件的顺序,这样我就不必跳过"物理"和精神上的文件?重新定位心理环境需要时间,在修复哑巴错别字时,那段时间完全被浪费了。

我喜欢的是make,你可以说$ make foo.o。然后我可以修复foo.cc仅在构建之后再转到bar.cc。 Alphabet Google是否支持这种先进的方法?

1 个答案:

答案 0 :(得分:1)

尝试使用--keep_going

这将告诉bazel不要停止它发现的第一个错误,而是尝试构建它可以做的一切。