Ubuntu पर Bazel इंस्टॉल करना

इस पेज पर, Ubuntu पर Bazel इंस्टॉल करने के विकल्पों के बारे में बताया गया है. इसमें, Bazel के कंप्लीशन स्क्रिप्ट और बाइनरी इंस्टॉलर के लिंक भी दिए गए हैं. इनकी ज़रूरत बैकअप के तौर पर पड़ सकती है. जैसे, अगर आपके पास एडमिन का ऐक्सेस नहीं है.

Ubuntu Linux के इन प्लैटफ़ॉर्म पर Bazel इंस्टॉल किया जा सकता है:

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

Bazel, Ubuntu के अन्य वर्शन और Debian "stretch" या इसके बाद के वर्शन के साथ काम कर सकता है. हालांकि, इसकी जांच नहीं की गई है और इसके काम करने की कोई गारंटी नहीं है.

Ubuntu पर Bazel इंस्टॉल करने के लिए, इनमें से कोई एक तरीका अपनाएं:

ध्यान दें: Arm पर आधारित सिस्टम के लिए, APT रिपॉज़िटरी में arm64 वर्शन शामिल नहीं है. साथ ही, बाइनरी इंस्टॉलर भी उपलब्ध नहीं है. ऐसे में, Bazelisk का इस्तेमाल करें या सोर्स से कंपाइल करें.

Bazel के साथ दो कंप्लीशन स्क्रिप्ट मिलती हैं. Bazel इंस्टॉल करने के बाद, ये काम किए जा सकते हैं:

Bazel के apt रिपॉज़िटरी का इस्तेमाल करना

पहला चरण: Bazel डिस्ट्रिब्यूशन यूआरआई को पैकेज सोर्स के तौर पर जोड़ना

ध्यान दें: यह सेटअप सिर्फ़ एक बार करना होता है.

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" सिर्फ़ पुराने वर्शन के साथ काम करने की वजह से रखा गया है. इसका मतलब यह नहीं है कि यह जेडीके के उन वर्शन से जुड़ा है जो काम करते हैं या शामिल हैं. Bazel के वर्शन, Java के वर्शन के हिसाब से अलग-अलग नहीं होते. "jdk1.8" कॉम्पोनेंट का नाम बदलने पर, रिपो के मौजूदा उपयोगकर्ताओं को समस्या हो सकती है.

दूसरा चरण: 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

तीसरा चरण: जेडीके इंस्टॉल करना (ज़रूरी नहीं)

Bazel में, बंडल किया गया निजी जेआरई शामिल होता है. इसलिए, आपको Java का कोई खास वर्शन इंस्टॉल करने की ज़रूरत नहीं होती.

हालांकि, अगर आपको Bazel का इस्तेमाल करके Java कोड बनाना है, तो आपको जेडीके इंस्टॉल करना होगा.

sudo apt install default-jdk

बाइनरी इंस्टॉलर का इस्तेमाल करना

आम तौर पर, आपको apt रिपॉज़िटरी का इस्तेमाल करना चाहिए. हालांकि, अगर आपके पास अपने कंप्यूटर पर एडमिन की अनुमतियां नहीं हैं या कस्टम रिपॉज़िटरी नहीं जोड़ी जा सकती हैं, तो बाइनरी इंस्टॉलर काम आ सकता है.

बाइनरी इंस्टॉलर, Bazel के GitHub रिलीज़ पेज से डाउनलोड किए जा सकते हैं.

इंस्टॉलर में Bazel बाइनरी शामिल होती है. यह इसे आपके $HOME/bin फ़ोल्डर में एक्सट्रैक्ट करता है. Bazel को काम करने के लिए, कुछ अतिरिक्त लाइब्रेरी मैन्युअल तरीके से इंस्टॉल करनी होंगी.

पहला चरण: ज़रूरी पैकेज इंस्टॉल करना

Bazel को काम करने के लिए, C++ कंपाइलर और unzip / zip की ज़रूरत होती है:

sudo apt install g++ unzip zip

अगर आपको Bazel का इस्तेमाल करके Java कोड बनाना है, तो जेडीके इंस्टॉल करें:

sudo apt-get install default-jdk

दूसरा चरण: इंस्टॉलर चलाना

इसके बाद, 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 निर्देश का इस्तेमाल करें.

तीसरा चरण: अपना एनवायरमेंट सेट अप करना

अगर आपने ऊपर बताए गए तरीके से --user फ़्लैग के साथ Bazel इंस्टॉलर चलाया है, तो Bazel एक्ज़ीक्यूटेबल आपके $HOME/bin डायरेक्ट्री में इंस्टॉल हो जाता है. इस डायरेक्ट्री को डिफ़ॉल्ट पाथ में जोड़ना अच्छा होता है. इसके लिए, यह तरीका अपनाएं:

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

इसे हमेशा के लिए लागू करने के लिए, इस निर्देश को अपनी ~/.bashrc या ~/.zshrc फ़ाइल में भी जोड़ा जा सकता है.

Bazel के Docker कंटेनर का इस्तेमाल करना

हम gcr.io/bazel-public/bazel पर, Bazel के हर वर्शन के लिए, Bazel इंस्टॉल किया हुआ Docker कंटेनर पब्लिश करते हैं. Docker कंटेनर का इस्तेमाल इस तरह किया जा सकता है:

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

Docker कंटेनर को इन चरणों में बनाया जाता है.