2022 年 BazelCon 将于 11 月 16 日至 17 日在纽约和线上举办。
立即报名!

在 Windows 上安装 Bazel

使用集合让一切井井有条 根据您的偏好保存内容并对其进行分类。

本页面介绍了在 Windows 上安装 Bazel 的要求和步骤。此外,它还包含问题排查和其他安装 Bazel 的方法,例如使用 Chocolatey 或 Scoop。

安装 Bazel

本部分介绍在 Windows 上安装应用的前提条件、环境设置和详细步骤。

检查系统

推荐:64 位 Windows 10,版本 1703(创作者更新)或更高版本

要查看您的 Windows 版本,请执行以下操作:

  • 点击“开始”按钮。
  • 在搜索框中输入 winver,然后按 Enter 键。
  • 您应该会看到包含 Windows 版本信息的“关于 Windows”框。

还支持:

  • 64 位 Windows 7 或更高版本

  • 64 位 Windows Server 2008 R2 或更高版本

安装前提条件

下载 Bazel

建议使用 Bazelisk

或者,您也可以:

设置您的环境

如需使 Bazel 默认可通过命令提示符或 PowerShell 访问,您可以将 Bazel 二进制文件重命名为 bazel.exe,并将其添加到默认路径。

set PATH=%PATH%;path to the Bazel binary

您还可以将系统 PATH 环境变量更改为永久性变量。了解如何设置环境变量

完成

“成功:您安装了 Bazel。”

如需检查安装是否正确,请尝试运行以下命令:

bazel version

接下来,您可以点击此处查看更多提示和指南:

安装编译器和语言运行时

根据要构建的语言,您需要:

  • MSYS2 x86_64

    MSYS2 是一款面向 Windows 的软件发行版和构建平台。它包含 Bash 和常见 Unix 工具(例如 greptargit)。

    您需要使用 MSYS2 来构建、测试或运行依赖于 Bash 的目标。这些类型通常是 genrulesh_binarysh_test,但也可能存在更多规则(例如 Starlark 规则)。如果构建目标需要 Bash,但 Bazel 无法找到 Bazel,则 Bazel 会显示错误。

  • 常见的 MSYS2 软件包

    您可能需要使用这些文件来构建和运行依赖于 Bash 的目标。MSYS2 默认不安装这些工具,因此您需要手动安装。PATH 中依赖于 Bash 工具的项目(例如 TensorFlow)需要执行此步骤。

    打开 MSYS2 终端并运行以下命令:

    pacman -S zip unzip patch diffutils git
    

    可选:如果您想要从 CMD 或 Powershell 使用 Bazel 且仍然可以使用 Bash 工具,请务必将 MSYS2_INSTALL_PATH/usr/bin 添加到 PATH 环境变量中。

  • Build Tools for Visual Studio 2019

    您将需要使用此文件在 Windows 上构建 C++ 代码。

    还支持:

    • 带有 Visual C++ 和 Windows 10 SDK 的 Visual Studio 2015(或更高版本)

    • Visual C++ Build Tools 2015(或更高版本)和 Windows 10 SDK

  • Windows x64 版 Java SE Development Kit 11 (JDK)

    您将需要使用此文件在 Windows 上构建 Java 代码。

    也受支持:Java 8、9 和 10

  • 适用于 Windows x86-64 的 Python 3.6

    您将需要使用此文件在 Windows 上构建 Python 代码。

    支持:适用于 Windows x86-64 的 Python 2.7 或更高版本

问题排查

Bazel 找不到 Bash 或 bash.exe

可能的原因

  • 您在默认安装路径下安装了 MSYS2

  • 您安装了 MSYS2 i686 而不是 MSYS2 x86_64

  • 您安装了 MSYS,而不是 MSYS2

解决方案

确保您已安装 MSYS2 x86_64。

如果无法解决问题,请执行以下操作:

  1. 依次转到“开始”菜单 >“设置”。

  2. 找到“为您的帐号修改环境变量”设置

  3. 查看顶部的列表(“<用户名> 的用户变量”),然后点击下方的“新建...”按钮。

  4. 对于“变量名称”,请输入 BAZEL_SH

  5. 点击“浏览文件...”。

  6. 导航到 MSYS2 目录,然后转到其下方的 usr\bin

    例如,您的系统可能为 C:\msys64\usr\bin

  7. 选择 bash.exebash 文件,然后点击“OK”(确定)

  8. “变量值”字段现在的路径是 bash.exe。点击“确定”以关闭窗口。

  9. 已完成。

    如果您打开新的 cmd.exe 或 PowerShell 终端并运行 Bazel,则 Bash 会显示。

Bazel 找不到 Visual Studio 或 Visual C++

可能的原因

  • 您安装了多个版本的 Visual Studio

  • 您安装并移除了多个版本的 Visual Studio

  • 您安装了各个版本的 Windows SDK

  • 您安装的 Visual Studio 不在默认安装路径下

解决方案

  1. 依次转到“开始”菜单 >“设置”。

  2. 找到“为您的帐号修改环境变量”设置

  3. 查看顶部的列表(“<用户名> 的用户变量”),然后点击下方的“新建...”按钮。

  4. 对于“变量名称”,请输入 BAZEL_VC

  5. 点击“浏览目录...”。

  6. 转到 Visual Studio 的 VC 目录。

    例如,您的系统可能为 C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC

  7. 选择 VC 文件夹,然后点击“确定”。

  8. “变量值”字段现在的路径是 VC。点击“确定”以关闭窗口。

  9. 已完成。

    如果您现在打开新的 cmd.exe 或 PowerShell 终端并运行 Bazel,则它会找到 Visual C++。

其他安装 Bazel 的方式

使用 Chocolatey

  1. 安装 Chocolatey 软件包管理器

  2. 安装 Bazel 软件包:

    choco install bazel
    

    此命令将安装最新版本的 Bazel 及其依赖项,例如 MSYS2 shell。不过,这样将不会安装 Visual C++。

如需详细了解 Chocolatey 软件包,请参阅巧克力安装和软件包维护指南

使用常规消息

  1. 使用以下 PowerShell 命令安装 Scoop 软件包管理器:

    iex (new-object net.webclient).downloadstring('https://get.scoop.sh')
    
  2. 安装 Bazel 软件包:

    scoop install bazel
    

如需详细了解 Scoop 软件包,请参阅 Scoop 安装和软件包维护指南

从源代码构建

如需从头开始构建 Bazel 而不进行安装,请参阅从源代码编译