Bazel 是一个构建和测试工具,用于大规模软件系统的构建。它支持多种语言和平台,其中包含 Ubuntu 系统。在这篇文章中,我们将讨论如何使用 Bazel 编译 Ubuntu 系统上的程序,并提供代码示例。
安装 Bazel
在 Ubuntu 系统上安装 Bazel 很简单。只需在控制台中输入以下命令即可:
sudo apt install curl
curl -fsSL https://bazel.build/bazel-release.pub.gpg | gpg --dearmor > bazel.gpg
sudo mv bazel.gpg /etc/apt/trusted.gpg.d/
echo "deb [arch=amd64] https://storage.googleapis.com/bazel-apt stable jdk1.8" | sudo tee /etc/apt/sources.list.d/bazel.list
sudo apt update && sudo apt install bazel
这将使用 apt 包管理器从官方存储库中下载和安装 Bazel。一旦安装完成,可以使用以下命令检查 Bazel 版本:
bazel version
这将显示安装的 Bazel 版本信息。
编译程序
在开始编译程序之前,需要确保安装了所需的依赖项。这些依赖项根据您的程序而有所不同,因此应该在开始编译之前仔细查看文档。
在本例中,我们将编译一个使用 C++ 编写的简单程序。首先,需要创建一个名为 WORKSPACE 的文件,该文件告诉 Bazel 如何构建项目。在此文件中,我们将声明我们将使用 C++ 编写程序,并添加任何必需的依赖项。
# WORKSPACE file
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
http_archive(
name = "com_google_absl",
url = "https://github.com/abseil/abseil-cpp/archive/20210324.tar.gz",
sha256 = "e27c6bcd5f47bff70842b1cbe1e968e93e73bc8bcd94b509e90bf4ab181db98c",
)
接下来,需要在项目根目录中创建一个名为 BUILD 的文件。在这个文件中,我们将描述我们要构建的目标和它们的依赖关系。在这个例子中,我们将只编译一个可执行