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

समस्या की शिकायत करें सोर्स देखें Nightly · 8.4 · 8.3 · 8.2 · 8.1 · 8.0 · 7.6

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

इन Ubuntu Linux प्लैटफ़ॉर्म पर काम करता है:

  • 22.04 (एलटीएस)
  • 20.04 (एलटीएस)
  • 18.04 (एलटीएस)

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

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

ध्यान दें: एआरएम पर आधारित सिस्टम के लिए, एपीटी रिपॉज़िटरी में 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" कॉम्पोनेंट का नाम सिर्फ़ लेगसी वजहों से रखा गया है. इसका मतलब यह नहीं है कि यह JDK के उन वर्शन से जुड़ा है जिनका इस्तेमाल किया जा सकता है या जिन्हें शामिल किया गया है. 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

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

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

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

sudo apt install default-jdk

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

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

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

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

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

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

sudo apt install g++ unzip zip

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

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 फ़्लैग, आपके सिस्टम पर $HOME/bin डायरेक्ट्री में Bazel को इंस्टॉल करता है. साथ ही, .bazelrc पाथ को $HOME/.bazelrc पर सेट करता है. इंस्टॉल करने के अन्य विकल्प देखने के लिए, --help कमांड का इस्तेमाल करें.

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

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

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

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

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

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

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

Docker कंटेनर को इस तरीके से बनाया जाता है.