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 programını kullanarak oluşturun.
Önyükleme olarak bilinen mevcut bir Bazel ikilisi 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 da kopyalayabilirsiniz.
İ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-dev
konumundadı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ükleyin veya indirin. 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 ikilisine ihtiyacınız vardır. Paket yöneticisinden veya GitHub'dan bir tane indirebilirsiniz. Bazel'i yükleme başlıklı makaleyi inceleyin. (Alternatif olarak, sıfırdan (bootstrap) oluşturabilirsiniz.)
Sorun giderme:
Terminalde
bazel
yazarak Bazel'i çalıştıramıyorsanız:Bazel ikilinizin dizini PATH'te olmayabilir.
Bu büyük bir sorun değildir.
bazel
yazmak yerine tam yolu yazmanız gerekir.Belki de Bazel ikili dosyasının adı
bazel
(Unix'te) veyabazel.exe
(Windows'da) değildir.Bu büyük bir sorun değildir. İkiliyi yeniden adlandırabilir veya
bazel
yerine ikilinin adını yazabilirsiniz.İkili dosya yürütülebilir olmayabilir (Unix sistemlerde).
chmod +x /path/to/bazel
komutunu ç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 klonlamanı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-src
dizini 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ı oluşturmak için Bazel'i çalıştırın (bazel-bin/src/bazel-dev
).
Talimatlar:
Bash terminali başlatma
cd
Bazel'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-src
Bazel'i kaynaktan derleme:
bazel build //src:bazel-dev
Alternatif olarak, daha küçük bir ikili oluşturmak için
bazel build //src:bazel --compilation_mode=opt
komutunu çalıştırabilirsiniz ancak bu daha yavaş bir derleme işlemidir.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.Z
işaretiyle derleme yapabilirsiniz.Çıkış
bazel-bin/src/bazel-dev
(veyabazel-bin/src/bazel
) konumunda 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 istemini başlatın (Başlat Menüsü > Çalıştır > "cmd.exe")
cd
Bazel'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-src
Bazel'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=opt
komutunu ç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.Z
işaretiyle derleme yapabilirsiniz.Çıkış
bazel-bin\src\bazel-dev.exe
(veyabazel-bin\src\bazel.exe
) 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.zip
indirinbazel-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ını kullanamazsınız. (Dağıtım arşivi, önyükleme 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'daki 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. 2. ve 3. sürümler desteklenir. Bu sürümlerden birini yüklemeniz yeterlidir.
Örneğin, Ubuntu Linux'ta aşağıdaki komutu kullanarak bu gereksinimleri yükleyebilirsiniz:
sudo apt-get install build-essential openjdk-21-jdk python zip unzip
2.2. Unix'te Bazel'i başlatma
Bir kabuk veya terminal penceresi açın.
cd
dağı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 JDK'sı olmayan bağımsız bir Bazel ikilisi. 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.
2b adımı: 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 patch
Visual 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_VS
veyaBAZEL_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'nin yolubash.exe
. Aşağıdaki örneklerde komutu görebilirsiniz.Bunu
C:\Windows\System32\bash.exe
olarak 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 ayarlanır.
Ö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"
cd
dağı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 JDK'sı olmayan bağımsız bir Bazel ikilisi. 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.