Bu sayfada, Bazel'in kaynaktan nasıl yükleneceği açıklanmakta ve sık karşılaşılan sorunlarla ilgili sorun giderme ipuçları verilmektedir.
Bazel'i kaynaktan oluşturmak için aşağıdakilerden birini yapabilirsiniz:
Mevcut bir Bazel ikili dosyasını kullanarak oluşturun.
Önyükleme olarak bilinen mevcut bir Bazel ikili dosyası olmadan oluşturun.
Bazel'i Bazel kullanarak derleme
Özet
En son Bazel sürümünü GitHub sürüm sayfasından veya Bazelisk ile edinin.
Bazel'in kaynaklarını GitHub'dan indirip bir yere çıkarın. Alternatif olarak, kaynak ağacını https://github.com/bazelbuild/bazel adresinden git clone komutuyla klonlayabilirsiniz.
İlk başlatma için gereken ön koşulları yükleyin (Unix benzeri sistemler veya Windows için bölümüne bakın).
Bazel'i kullanarak Bazel'in geliştirme sürümünü oluşturun:
bazel build //src:bazel-dev(veya Windows'dabazel build //src:bazel-dev.exe)Elde edilen ikili dosya
bazel-bin/src/bazel-devkonumundadır (veya Windows'dabazel-bin\src\bazel-dev.exe). İstediğiniz yere kopyalayabilir ve başka bir yükleme yapmadan hemen kullanabilirsiniz.
Ayrıntılı talimatları aşağıda bulabilirsiniz.
1. adım: En son Bazel sürümünü edinin
Hedef: Bazel'in yayın sürümünü yükleme veya indirme. Terminalde bazel yazarak çalıştırabildiğinizden emin olun.
Nedeni: Bazel'i GitHub kaynak ağacından oluşturmak için önceden mevcut bir Bazel ikili dosyasına ihtiyacınız vardır. Paket yöneticisinden veya GitHub'dan birini indirebilirsiniz. Bazel'i yükleme başlıklı makaleyi inceleyin. (Alternatif olarak, sıfırdan (bootstrap) oluşturabilirsiniz.)
Sorun giderme:
Terminalde
bazelyazarak Bazel'i çalıştıramıyorsanız:Bazel ikilinizin dizini PATH'te olmayabilir.
Bu büyük bir sorun değildir.
bazelyazmak yerine tam yolu yazmanız gerekir.Belki de Bazel ikili dosyasının kendisi
bazel(Unix'te) veyabazel.exe(Windows'da) olarak adlandırılmıyordur.Bu büyük bir sorun değildir. İkili dosyayı yeniden adlandırabilir veya
bazelyerine ikili dosyanın adını yazabilirsiniz.İkili dosya yürütülebilir olmayabilir (Unix sistemlerinde).
chmod +x /path/to/bazelkomutunu çalıştırarak ikili dosyayı yürütülebilir hale getirmeniz gerekir.
2. adım: Bazel'in kaynaklarını GitHub'dan indirin
Git'i biliyorsanız https://github.com/bazelbuild/bazel adresini git clone yapmanız yeterlidir.
Diğer durumlarda:
En son kaynakları zip dosyası olarak indirin.
İçeriği bir yere çıkarın.
Örneğin, ana dizininizin altında bir
bazel-srcdizini oluşturun ve dosyaları buraya çıkarın.
3. adım: Ön koşulları yükleyin
İlk başlatma için gereken ön koşulları (aşağıya bakın) yükleyin: JDK, C++ derleyici, MSYS2 (Windows'da derleme yapıyorsanız) vb.
4a adımı: Ubuntu Linux, macOS ve diğer Unix benzeri sistemlerde Bazel'i oluşturun
Windows'a yönelik talimatlar için Windows'da Bazel'i derleme başlıklı makaleye bakın.
Hedef: Özel bir Bazel ikili programı (bazel-bin/src/bazel-dev) oluşturmak için Bazel'i çalıştırın.
Talimatlar:
Bash terminalini başlatma
cdBazel'in kaynaklarını çıkardığınız (veya klonladığınız) dizine.Örneğin, kaynakları ana dizininiz altında çıkardıysanız şunu çalıştırın:
cd ~/bazel-srcBazel'i kaynaktan derleme:
bazel build //src:bazel-devAlternatif olarak, daha küçük bir ikili oluşturmak için
bazel build //src:bazel --compilation_mode=optkomutunu çalıştırabilirsiniz ancak bu komutun derlenmesi daha yavaştır.bazel --version'nin belirtilen sürümü vermesi için ikili dosyaya bir Bazel sürümü yerleştirmek üzere--stamp --embed_label=X.Y.Zişaretiyle derleme yapabilirsiniz.Çıkış
bazel-bin/src/bazel-dev(veyabazel-bin/src/bazel) biçiminde olur.
4b adımı: Windows'da Bazel'i oluşturun
Unix benzeri sistemlerle ilgili talimatlar için Ubuntu Linux, macOS ve diğer Unix benzeri sistemler başlıklı makaleyi inceleyin.
Hedef: Özel bir Bazel ikili programı oluşturmak için Bazel'i çalıştırın
(bazel-bin\src\bazel-dev.exe).
Talimatlar:
Komut İstemi'ni başlatın (Başlat Menüsü > Çalıştır > "cmd.exe")
cdBazel'in kaynaklarını çıkardığınız (veya klonladığınız) dizine.Örneğin, kaynakları ana dizininiz altında çıkardıysanız şunu çalıştırın:
cd %USERPROFILE%\bazel-srcBazel'i kaynaktan derleme:
bazel build //src:bazel-dev.exe
Alternatif olarak, daha küçük bir ikili oluşturmak için
bazel build //src:bazel.exe --compilation_mode=optkomutunu çalıştırabilirsiniz ancak bu komutun derlenmesi daha yavaştır.bazel --version'nin belirtilen sürümü vermesi için ikili dosyaya bir Bazel sürümü yerleştirmek üzere--stamp --embed_label=X.Y.Zişaretiyle derleme yapabilirsiniz.Çıkış
bazel-bin\src\bazel-dev.exe(veyabazel-bin\src\bazel.exe) konumunda olur.
5. adım: Oluşturulan ikili dosyayı yükleyin
Aslında, yüklemeniz gereken bir şey yok.
Önceki adımın çıkışı, bağımsız bir Bazel ikilisidir. Bu dosyayı herhangi bir dizine kopyalayıp hemen kullanabilirsiniz. (Bu dizinin PATH'inizde olması, "bazel" komutunu her yerde çalıştırabilmeniz açısından faydalıdır.)
Bazel'i sıfırdan oluşturma (bootstrap)
Ayrıca, mevcut bir Bazel ikilisi kullanmadan Bazel'i sıfırdan da oluşturabilirsiniz.
1. adım: Bazel'in kaynaklarını (dağıtım arşivi) indirin
(Bu adım tüm platformlarda aynıdır.)
Örneğin, GitHub'dan
bazel-<version>-dist.zipindirinbazel-0.28.1-dist.zip.Dikkat:
- Tek bir mimariden bağımsız dağıtım arşivi vardır. Mimarilere veya işletim sistemlerine özel dağıtım arşivleri yoktur.
- Bu kaynaklar, GitHub kaynak ağacıyla aynı değildir. Bazel'i başlatmak için dağıtım arşivini kullanmanız gerekir. GitHub'dan kopyalanan bir kaynak ağacı kullanamazsınız. (Dağıtım arşivi, başlatma için gerekli olan ve normal Git kaynak ağacının parçası olmayan oluşturulmuş kaynak dosyaları içeriyor.)
Dağıtım arşivini diskte bir yere açın.
Bazel'in 3D5919B448457EE0 yayın anahtarıyla oluşturulan imzayı doğrulamanız gerekir.
2a adımı: Ubuntu Linux, macOS ve diğer Unix benzeri sistemlerde Bazel'i başlatın
Windows'la ilgili talimatlar için Windows'da Bazel'i başlatma başlıklı makaleyi inceleyin.
2.1. Ön koşulları yükleme
Bash
zip, unzip
C++ derleme araç zinciri
JDK. 21. sürüm gereklidir.
Python. 3. sürüm gereklidir.
Örneğin, Ubuntu Linux'ta aşağıdaki komutu kullanarak bu gereksinimleri yükleyebilirsiniz:
sudo apt-get install build-essential openjdk-21-jdk python3 zip unzip
2.2. Unix'te Bazel'i başlatma
Bir kabuk veya terminal penceresi açın.
cddağıtım arşivini açtığınız dizine.Derleme komut dosyasını çalıştırın:
env EXTRA_BAZEL_ARGS="--tool_java_runtime_version=local_jdk" bash ./compile.sh.
Derlenen çıktı, output/bazel içine yerleştirilir. Bu, yerleşik bir JDK'sı olmayan bağımsız bir Bazel ikilisidir. Bu kodu istediğiniz yere kopyalayabilir veya yerinde kullanabilirsiniz. Kolaylık sağlaması için bu ikili dosyayı PATH cihazınızdaki bir dizine (ör. Linux'ta /usr/local/bin) kopyalayın.
bazel ikilisini yeniden üretilebilir şekilde oluşturmak için "Derleme komut dosyasını çalıştırın" adımında SOURCE_DATE_EPOCH değerini de ayarlayın.
2. Adım (b): Windows'da Bazel'i başlatın
Unix benzeri sistemlerle ilgili talimatlar için Ubuntu Linux, macOS ve diğer Unix benzeri sistemlerde Bazel'i başlatma başlıklı makaleyi inceleyin.
2.1. Ön koşulları yükleme
zip ve unzip için MSYS2 paketleri. MSYS2 kabuğunda aşağıdaki komutu çalıştırın:
pacman -S zip unzip patchVisual C++ derleyicisi. Visual C++ derleyicisini Visual Studio 2015 veya daha yeni bir sürümün parçası olarak ya da en yeni Build Tools for Visual Studio 2017'yi yükleyerek kurun.
JDK. 21. sürüm gereklidir.
Python. 2. ve 3. sürümler desteklenir. Bu sürümlerden birini yüklemeniz yeterlidir. Windows'a özel sürümü (https://www.python.org adresinden indirilebilir) kullanmanız gerekir. MSYS2'de pacman aracılığıyla yüklenen sürümler çalışmaz.
2.2. Windows'da Bazel'i başlatma
MSYS2 kabuğunu açın.
Aşağıdaki ortam değişkenlerini ayarlayın:
BAZEL_VSveyaBAZEL_VC(aynı değildir): Visual Studio dizininin (BAZEL_VS) veya Visual C++ dizininin (BAZEL_VC) yoluna ayarlayın. Bunlardan birini ayarlamanız yeterlidir.BAZEL_SH: MSYS2'ninbash.exeyolu. Aşağıdaki örneklerde komutu görebilirsiniz.Bunu
C:\Windows\System32\bash.exeolarak ayarlamayın. (Windows için Linux Alt Sistemi'ni yüklediyseniz bu dosya sizde vardır.) Bazel,bash.exe'nın bu sürümünü desteklemiyor.PATH: Python dizinini ekleyin.JAVA_HOME: JDK dizinine ayarlayın.
Örnek (BAZEL_VS kullanılarak):
export BAZEL_VS="C:/Program Files (x86)/Microsoft Visual Studio/2017/BuildTools" export BAZEL_SH="$(cygpath -m $(realpath $(which bash)))" export PATH="/c/python27:$PATH" export JAVA_HOME="C:/Program Files/Java/jdk-21"veya (BAZEL_VC kullanılarak):
export BAZEL_VC="C:/Program Files (x86)/Microsoft Visual Studio/2017/BuildTools/VC" export BAZEL_SH="$(cygpath -m $(realpath $(which bash)))" export PATH="/c/python27:$PATH" export JAVA_HOME="C:/Program Files/Java/jdk-21"cddağıtım arşivini açtığınız dizine.Derleme komut dosyasını çalıştırın:
env EXTRA_BAZEL_ARGS="--tool_java_runtime_version=local_jdk" ./compile.sh
Derlenen çıktı, output/bazel.exe içine yerleştirilir. Bu, yerleşik bir JDK'sı olmayan bağımsız bir Bazel ikilisidir. Bu kodu istediğiniz yere kopyalayabilir veya yerinde kullanabilirsiniz. Kolaylık sağlaması için bu ikili dosyayı PATH cihazınızdaki bir dizine kopyalayın.
bazel.exe ikilisini yeniden üretilebilir şekilde oluşturmak için "Derleme komut dosyasını çalıştırın" adımında SOURCE_DATE_EPOCH değerini de ayarlayın.
Bazel'i MSYS2 kabuğundan çalıştırmanız gerekmez. Bazel'i Komut İstemi (cmd.exe) veya PowerShell'den çalıştırabilirsiniz.