Ubuntu에 Bazel 설치

문제 신고 소스 보기

이 페이지에서는 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 출시 버전은 자바 버전에 구애받지 않습니다. '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

이렇게 하면 Bazel 1.0.0이 시스템에 /usr/bin/bazel-1.0.0으로 설치됩니다. 프로젝트를 빌드하기 위해 특정 Bazel 버전이 필요한 경우 유용할 수 있습니다. .bazelversion 파일을 사용하여 빌드해야 하는 Bazel 버전을 명시적으로 명시하기 때문입니다.

필요한 경우 symlink를 만들어 bazel를 특정 버전으로 설정할 수 있습니다.

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

3단계: JDK 설치하기 (선택사항)

Bazel은 런타임으로 제공되는 비공개 번들 JRE를 포함하며, 자바의 특정 버전을 설치할 필요가 없습니다.

그러나 Bazel을 사용하여 자바 코드를 빌드하려면 JDK를 설치해야 합니다.

sudo apt install default-jdk

바이너리 설치 프로그램 사용

일반적으로 apt 저장소를 사용해야 하지만 바이너리 설치 프로그램은 머신에 대한 관리자 권한이 없거나 커스텀 저장소를 추가할 수 없는 경우에 유용합니다.

바이너리 설치 프로그램은 Bazel의 GitHub 출시 페이지에서 다운로드할 수 있습니다.

설치 프로그램은 Bazel 바이너리를 포함하고 이를 $HOME/bin 폴더에 추출합니다. Bazel이 작동하려면 일부 추가 라이브러리를 수동으로 설치해야 합니다.

1단계: 필수 패키지 설치

Bazel이 작동하려면 C++ 컴파일러와 압축 해제 / zip 파일이 필요합니다.

sudo apt install g++ unzip zip

Bazel을 사용하여 자바 코드를 빌드하려면 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 설치 프로그램을 실행하면 Bazel 실행 파일이 $HOME/bin 디렉터리에 설치됩니다. 다음과 같이 이 디렉터리를 기본 경로에 추가하는 것이 좋습니다.

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

이 명령어를 ~/.bashrc 또는 ~/.zshrc 파일에 추가하여 영구적으로 만들 수도 있습니다.

Bazel Docker 컨테이너 사용

각 Bazel 버전에 대해 Bazel이 설치된 Docker 컨테이너를 gcr.io/bazel-public/bazel에 게시합니다. 다음과 같이 Docker 컨테이너를 사용할 수 있습니다.

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

Docker 컨테이너는 이 단계에 따라 빌드됩니다.