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++ कंपाइलर और अनज़िप / ज़िप की ज़रूरत होती है:

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 कंटेनर को इन चरणों से बनाया जाता है.