Bazel应用方法

Bazel简单应用

在github上可以下载bazel官方的简单教程例子。

git clone https://github.com/bazelbuild/examples

该文件结构为:
在这里插入图片描述

1.创建工作空间workspace

工作空间是一个保留你工程的源文件以及Bazel build输出的目录。该工作空间可以是空的,或者里面包含一些外部依赖用于build。

创建方法为:指定一个目录作为Bazel工作空间,创建一个名为WORKSPACE的空文件在该根目录下。

当Bazel编译工程时,所有的输入和依赖必须在相同的workspace下。

2.书写BUILD文件

一个BUILD文件包含几个不同类型的bazel指令。
最重要的类型是build rule,告知Bazel如何去build想要的输出,比如execuatable binaries或者libraries。
每一个BUILD文件中的build rule叫做一个target,该target指向对应的源文件或依赖集合。一个target也可以指向其他target

参考examples/cpp-tutorial/stage1/main目录下的一个简单的BUILD文件。里面仅包含一个target和一个build rule。
在这里插入图片描述
在这个例子中,hello-worldtarget示例cc_binaries规则,该规则告知Bazel根据hello-world.cc源文件去build一个可执行binary。
其中targetsrc表明Bazel build的target是哪个源文件。

3.编译工程

拿着教程的例子来尝试编译。将目录转到examples/cpp-tutorial/stage1下,跑以下命令:

bazel build //main:hello-world

注意到target label,//main:部分是该BUILD文件相对于workspace根目录的位置,hello-world是我们命名的target。

之后Bazel会输出以下类似的消息:

INFO: Found 1 targe
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值