หน้านี้อธิบายตัวเลือกสำหรับการติดตั้ง Bazel บน Ubuntu รวมถึงลิงก์ไปยังสคริปต์การเติมข้อความอัตโนมัติของ Bazel และโปรแกรมติดตั้งแบบไบนารีในกรณีที่จำเป็นต้องใช้เป็นตัวเลือกสำรอง (เช่น ในกรณีที่คุณไม่มีสิทธิ์เข้าถึงระดับผู้ดูแลระบบ)
แพลตฟอร์ม Ubuntu Linux ที่รองรับมีดังนี้
- 22.04 (LTS)
- 20.04 (LTS)
- 18.04 (LTS)
Bazel ควรเข้ากันได้กับ Ubuntu เวอร์ชันอื่นๆ รวมถึง Debian "stretch" และเวอร์ชันที่สูงกว่า แต่ยังไม่ได้ทดสอบและไม่รับประกันว่าจะใช้งานได้
ติดตั้ง Bazel บน Ubuntu โดยใช้วิธีใดวิธีหนึ่งต่อไปนี้
- แนะนำ: ใช้ Bazelisk
- ใช้ที่เก็บ APT ที่กำหนดเอง
- ใช้โปรแกรมติดตั้งแบบไบนารี
- ใช้คอนเทนเนอร์ Docker ของ Bazel
- คอมไพล์ Bazel จากแหล่งที่มา
หมายเหตุ: สำหรับระบบที่ใช้ Arm ที่เก็บ APT จะไม่มีเวอร์ชัน arm64 และไม่มีโปรแกรมติดตั้งแบบไบนารี ให้ใช้ Bazelisk หรือคอมไพล์จากแหล่งที่มา
Bazel มาพร้อมกับสคริปต์การเติมข้อความอัตโนมัติ 2 รายการ หลังจากติดตั้ง Bazel แล้ว คุณจะทำสิ่งต่อไปนี้ได้
- เข้าถึงสคริปต์การเติมข้อความอัตโนมัติของ Bash
- ติดตั้งสคริปต์การเติมข้อความอัตโนมัติของ Zsh
การใช้ที่เก็บ apt ของ Bazel
ขั้นตอนที่ 1: เพิ่ม URI การเผยแพร่ของ Bazel เป็นแหล่งที่มาของแพ็กเกจ
หมายเหตุ: นี่เป็นขั้นตอนการตั้งค่าที่ทำเพียงครั้งเดียว
sudo apt install apt-transport-https curl gnupg -ycurl -fsSL https://bazel.build/bazel-release.pub.gpg | gpg --dearmor >bazel-archive-keyring.gpgsudo mv bazel-archive-keyring.gpg /usr/share/keyringsecho "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ซึ่งจะติดตั้ง 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/bazelbazel --version # 1.0.0
ขั้นตอนที่ 3: ติดตั้ง JDK (ไม่บังคับ)
Bazel มี JRE แบบรวมที่เป็นส่วนตัวเป็นรันไทม์ และไม่กำหนดให้คุณต้องติดตั้ง Java เวอร์ชันที่เฉพาะเจาะจง
อย่างไรก็ตาม หากต้องการสร้างโค้ด Java โดยใช้ Bazel คุณต้องติดตั้ง JDK
sudo apt install default-jdkการใช้โปรแกรมติดตั้งแบบไบนารี
โดยทั่วไป คุณควรใช้ที่เก็บ apt แต่โปรแกรมติดตั้งแบบไบนารีอาจมีประโยชน์หากคุณไม่มีสิทธิ์ระดับผู้ดูแลระบบในเครื่องหรือเพิ่มที่เก็บที่กำหนดเองไม่ได้
คุณสามารถดาวน์โหลดโปรแกรมติดตั้งแบบไบนารีได้จากหน้าการเผยแพร่ของ Bazel บน GitHub
โปรแกรมติดตั้งมีไบนารีของ Bazel และแยกไฟล์ลงในโฟลเดอร์ $HOME/bin คุณต้องติดตั้งไลบรารีเพิ่มเติมบางรายการด้วยตนเองเพื่อให้ Bazel ทำงานได้
ขั้นตอนที่ 1: ติดตั้งแพ็กเกจที่จำเป็น
Bazel ต้องใช้คอมไพเลอร์ C++ และ unzip / zip จึงจะทำงานได้
sudo apt install g++ unzip zipหากต้องการสร้างโค้ด Java โดยใช้ Bazel ให้ติดตั้ง JDK ดังนี้
sudo apt-get install default-jdkขั้นตอนที่ 2: เรียกใช้โปรแกรมติดตั้ง
จากนั้นให้ดาวน์โหลดโปรแกรมติดตั้งแบบไบนารีของ Bazel ที่ชื่อ bazel-version-installer-linux-x86_64.sh
จากหน้าการเผยแพร่ของ Bazel บน GitHub
ดำเนินการดังนี้
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: ตั้งค่าสภาพแวดล้อม
หากคุณเรียกใช้โปรแกรมติดตั้ง Bazel ด้วยแฟล็ก --user ดังที่กล่าวไว้ข้างต้น ระบบจะติดตั้งไฟล์ปฏิบัติการของ Bazel ในไดเรกทอรี $HOME/bin
เราขอแนะนำให้เพิ่มไดเรกทอรีนี้ลงในเส้นทางเริ่มต้นดังนี้
export PATH="$PATH:$HOME/bin"นอกจากนี้ คุณยังเพิ่มคำสั่งนี้ลงในไฟล์ ~/.bashrc หรือ ~/.zshrc เพื่อให้มีผลถาวรได้ด้วย
การใช้คอนเทนเนอร์ Docker ของ Bazel
เราเผยแพร่คอนเทนเนอร์ Docker ที่ติดตั้ง Bazel สำหรับ Bazel แต่ละเวอร์ชันที่ gcr.io/bazel-public/bazel
คุณสามารถใช้คอนเทนเนอร์ Docker ได้ดังนี้
$ docker pull gcr.io/bazel-public/bazel:<bazel version>
คอนเทนเนอร์ Docker สร้างขึ้นโดย ขั้นตอนต่อไปนี้