在 Ubuntu 上安裝 Bazel

回報問題 查看原始碼 Nightly · 7.4 . 7.3 7.2 7.1 7.0 6.5

本頁面說明在 Ubuntu 上安裝 Bazel 的選項。也會提供 Bazel 完成指令碼和二進位檔安裝程式的連結 (例如沒有管理員存取權時)。

支援的 Ubuntu Linux 平台:

  • 22.04 (LTS)
  • 20.04 (LTS)
  • 18.04 (LTS)

Bazel 應與其他 Ubuntu 版本和 Debian 相容 「伸展」以上,但是未經測試,無法保證可正常運作。

使用下列其中一種方法在 Ubuntu 上安裝 Bazel:

注意:如果是 Arm 系統,APT 存放區不包含 arm64 版本,且沒有可用的二進位檔安裝程式。請使用 Bazelisk,或從原始碼編譯。

Bazel 提供了兩個完成指令碼。安裝 Bazel 後,您可以執行下列操作:

使用 Bazel 的 apt 存放區

步驟 1:新增 Bazel 發行 URI 做為套件來源

注意:這是一次性的設定步驟。

sudo apt install apt-transport-https curl gnupg -y
curl -fsSL https://bazel.build/bazel-release.pub.gpg | gpg --dearmor >bazel-archive-keyring.gpg
sudo mv bazel-archive-keyring.gpg /usr/share/keyrings
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/bazel-archive-keyring.gpg] https://storage.googleapis.com/bazel-apt stable jdk1.8" | sudo tee /etc/apt/sources.list.d/bazel.list

元件名稱「jdk1.8」僅是為了舊版而保留,與支援或包含的 JDK 版本無關。Bazel 版本各異 Java 版本。 變更「jdk1.8」會導致存放區的現有使用者中斷。

步驟 2:安裝及更新 Bazel

sudo apt update && sudo apt install bazel

安裝完成後,您可以透過一般系統更新升級至新版 Bazel:

sudo apt update && sudo apt full-upgrade

bazel 套件一律會安裝最新的穩定版本 Bazel。除了最新版本外,您也可以安裝特定舊版的 Bazel,例如:

sudo apt install bazel-1.0.0

這個指令會在您的系統中以 /usr/bin/bazel-1.0.0 的形式安裝 Bazel 1.0.0。如果您需要特定版本的 Bazel 來建構專案,例如因為專案使用 .bazelversion 檔案明確指出應使用哪個 Bazel 版本進行建構,這項功能就很實用。

您也可以視情況建立符號連結,將 bazel 設為特定版本:

sudo ln -s /usr/bin/bazel-1.0.0 /usr/bin/bazel
bazel --version  # 1.0.0

步驟 3:安裝 JDK (選用)

Bazel 會將私人內含 JRE 做為執行階段,因此您不需要安裝任何特定版本的 Java。

不過,如果您想使用 Bazel 建構 Java 程式碼,就必須安裝 JDK。

sudo apt install default-jdk

使用二進位檔安裝程式

一般而言,您應該使用 apt 存放區,但二進位檔安裝程式 如果沒有電腦的管理員權限,就能派上用場 無法新增自訂存放區。

您可以透過 Bazel 的 GitHub 版本頁面下載二進位檔安裝程式。

安裝程式包含 Bazel 二進位檔,並解壓縮至 $HOME/bin 資料夾。Bazel 必須手動安裝某些額外程式庫,才能正常運作。

步驟 1:安裝必要套件

Bazel 需要 C++ 編譯器和 unzip/zip 才能運作:

sudo apt install g++ unzip zip

如要使用 Bazel 建構 Java 程式碼,請安裝 JDK:

sudo apt-get install default-jdk

步驟 2:執行安裝程式

接著,請從 GitHub 上的 Bazel 版本頁面下載名為 bazel-version-installer-linux-x86_64.sh 的 Bazel 二進位安裝程式。

執行方式如下:

chmod +x bazel-version-installer-linux-x86_64.sh
./bazel-version-installer-linux-x86_64.sh --user

--user 標記會將 Bazel 安裝至系統上的 $HOME/bin 目錄, 會將 .bazelrc 路徑設為 $HOME/.bazelrc。使用 --help 指令查看其他安裝選項。

步驟 3:設定環境

如果您使用上述的 --user 標記執行 Bazel 安裝程式, 執行檔安裝在您的 $HOME/bin 目錄中。 建議您將這個目錄新增到預設路徑中,如下所示:

export PATH="$PATH:$HOME/bin"

您也可以將這個指令新增至 ~/.bashrc~/.zshrc 檔案,讓指令永久生效。

使用 Bazel Docker 容器

我們會在 gcr.io/bazel-public/bazel 發布已安裝 Bazel 的 Docker 容器,適用於每個 Bazel 版本。您可以透過以下方式使用 Docker 容器:

$ docker pull gcr.io/bazel-public/bazel:<bazel version>

Docker 容器是透過這些步驟建構而成。