第 12 章:Bazel 构建系统 - 强化
学习目标
- 掌握多文件项目构建
- 理解依赖管理
- 学会使用库
12.1 多文件项目
项目结构
project/
├── WORKSPACE
├── BUILD
├── main.c
├── utils.c
└── utils.h
BUILD 文件
cc_library(
name = "utils",
srcs = ["utils.c"],
hdrs = ["utils.h"],
)
cc_binary(
name = "app",
srcs = ["main.c"],
deps = [":utils"],
)
12.2 多目录项目
project/
├── WORKSPACE
├── src/
│ ├── BUILD
│ └── main.c
└── lib/
├── BUILD
├── utils.c
└── utils.h
lib/BUILD
cc_library(
name = "utils",
srcs = ["utils.c"],
hdrs = ["utils.h"],
visibility = ["//visibility:public"],
)
src/BUILD
cc_binary(
name = "app",
srcs = ["main.c"],
deps = ["//lib:utils"],
)
实践练习
创建一个计算器项目,包含多个模块。