Перейти к содержанию

Последнее обновление:2026-10-12

Сборка проектов C++ с Bazel

Проекты этого сайта (включая CPlusPlusThings) уже перешли на сборку с Bazel; здесь я записываю весь процесс — от установки с нуля до успешной компиляции, все шаги реально проверены.

1. Установка

Возьмём Linux в качестве примера: официально рекомендуется ставить пользовательскую версию installer-скриптом (root не нужен): gpadmin@gpadmin:~$ ./bazel-6.1.1-installer-linux-x86_64.sh --user Bazel installer


Bazel is bundled with software licensed under the GPLv2 with Classpath exception. You can find the sources next to the installer on our release page: https://github.com/bazelbuild/bazel/releases

Build information

  • Commit Uncompressing......WARNING: Invoking Bazel in batch mode since it is not invoked from within a workspace (below a directory having a WORKSPACE file). Extracting Bazel installation... .

Bazel is now installed!

Make sure you have "/home/gpadmin/bin" in your path.

For bash completion, add the following line to your : source /home/gpadmin/.bazel/bin/bazel-complete.bash

For fish shell completion, link this file into your /home/gpadmin/.config/fish/completions/ directory: ln -s /home/gpadmin/.bazel/bin/bazel.fish /home/gpadmin/.config/fish/completions/bazel.fish

See http://bazel.build/docs/getting-started.html to start a new project!

安装完默认放在 `~/bin`,可以先确认一下:
gpadmin@gpadmin:~$ ls ~/bin/ bazel
## 2.配置 PATH

安装器会提醒你把 `~/bin` 加进 PATH。编辑 `~/.bashrc`,在文件末尾加一行:
export PATH="\(PATH:\)HOME/bin"
然后重新加载使其生效:
source ~/.bashrc
## 3.验证与第一个构建
bazel --version
能打印版本号就说明装好了。接着到任意一个带 WORKSPACE/MODULE.bazel 的项目目录里跑:
bazel build //... ```

Bazel сам подтягивает зависимости и кэширует артефакты сборки, поэтому вторая сборка занимает буквально секунды — в этом и состоит суть его преимущества над классическим Make: удалённый/локальный кэш по хэшу содержимого + строгое замыкание зависимостей.

Полную практическую демонстрацию сборки проекта этого сайта смотрите в видео на Bilibili: Выпуск 1: Step By Step — собираем этот проект; лучше всего смотреть вместе с этой статьёй. Вопросы ждём в комментариях~

Похожие темы

Комментарии