Ubuntu에 Bazel 설치

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

지원되는 Ubuntu Linux 플랫폼:

  • 18.04 (LTS)
  • 16.04 (LTS)

Bazel은 다른 Ubuntu 출시 버전 및 Debian 'stretch'와 호환되지만 테스트되지 않으며 작동이 보장되지 않습니다.

다음 방법 중 하나를 사용하여 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의 특정 버전이 필요한 경우에 유용할 수 있습니다. 예를 들어 .bazelversion 파일을 사용하여 빌드해야 하는 Bazel 버전을 명시적으로 지정하기 때문입니다.

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

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

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

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

그러나 Bazel을 사용하여 자바 코드를 빌드하려면 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++ 컴파일러와 zip / zip이 필요합니다.

sudo apt install g++ unzip zip

Bazel을 사용하여 자바 코드를 빌드하려면 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 파일에 추가하여 되돌릴 수도 있습니다.