Ubuntu에 Bazel 설치

이 페이지에서는 Ubuntu에 Bazel을 설치하기 위한 옵션을 설명합니다. 또한 백업 옵션으로 필요한 경우 (예: 관리 액세스 권한이 없는 경우) Bazel 완료 스크립트와 바이너리 설치 프로그램의 링크를 제공합니다.

지원되는 Ubuntu Linux 플랫폼:

  • 20.04 (LTS)
  • 18.04 (LTS)

Bazel은 다른 Ubuntu 출시 버전 및 Debian ' 신경' 이상과 호환되어야 하지만, 테스트되지 않았으며 작동이 보장되지 않습니다.

다음 방법 중 하나를 사용하여 Ubuntu에 Bazel을 설치합니다.

참고: Arm 기반 시스템의 경우 APT 저장소에 arm64 출시 버전이 포함되어 있지 않으며 사용할 수 있는 바이너리 설치 프로그램이 없습니다. Bazelisk를 사용하거나 소스에서 컴파일합니다.

Bazel은 두 가지 완료 스크립트와 함께 제공됩니다. Bazel을 설치한 후에는 다음을 수행할 수 있습니다.

1단계: Bazel 배포 URI를 패키지 소스로 추가

Bazel의 apt 저장소 사용

참고: 설정 단계는 한 번만 진행하면 됩니다.

sudo apt install apt-transport-https curl gnupg
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이 필요한 경우 유용할 수 있습니다. 예를 들어 Bazel 버전은 빌드해야 하는 Bazel 버전을 명시적으로 표시하기 위해 .bazelversion 파일을 사용하기 때문입니다.

원하는 경우 심볼릭 링크를 만들어 bazel을 특정 버전으로 설정할 수 있습니다.

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

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

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

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

# Ubuntu 16.04 (LTS) uses OpenJDK 8 by default:
sudo apt install openjdk-8-jdk
# Ubuntu 18.04 (LTS) uses OpenJDK 11 by default:
sudo apt install openjdk-11-jdk

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

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

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

설치 프로그램에 Bazel 바이너리가 포함되어 있으며 $HOME/bin 폴더에 압축을 풉니다. Bazel이 작동하려면 일부 추가 라이브러리를 수동으로 설치해야 합니다.

1단계: 필수 패키지 설치

Bazel이 작동하려면 C++ 컴파일러가 있어야 하고 압축 해제 / 압축이 필요합니다.

sudo apt install g++ unzip zip

Bazel을 사용하여 Java 코드를 빌드하려면 JDK를 설치합니다.

# Ubuntu 16.04 (LTS) uses OpenJDK 8 by default:
sudo apt-get install openjdk-8-jdk
# Ubuntu 18.04 (LTS) uses OpenJDK 11 by default:
sudo apt-get install openjdk-11-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 파일에 추가하여 영구적으로 지정할 수도 있습니다.