02-bazel构建C++项目(二)

上一篇分析了单target 单package 单输出的项目,现在分析一下单输出多package 的情况


之前提到过只要一个目录有一个BUILD文件(最多一个)就可以称为一个 package

如果一个库对其他的构建项目有依赖关系的话,在他的属性里面就会指定 deps 属性,如下图:


这里有三个 target,第一个target在一个目录 后两个在一个目录,名为 xx 的 target 会依赖于同级的库target xxx,和另一个目录的target xxxx(都在deps属性里面指定了)。

这里简单说一下这个 targte 的visibility 属性,一个 target 默认是指对 当前 BUILD 文件里的 其他 target 可见的,如果外部想要依赖引用的话,就需要在 visibility 属性里面指定相对于 workspace 的路径target。

之后在运行 bazel 的 target 构建命令就可以了~

你可能感兴趣的:(02-bazel构建C++项目(二))