Kaynaktan Bazel derleniyor

Sorun bildirin Kaynağı göster Gece · 7,4 , 7.3 · 7,2 · 7,1 · 7,0 · 6,5

Bu sayfada, Bazel'ın kaynaktan nasıl yükleneceği açıklanır ve sorun giderme ipuçlarına göz atın.

Bazel'ı kaynaktan oluşturmak için aşağıdakilerden birini yapabilirsiniz:

Bazel'i Bazel kullanarak derleme

Özet

  1. En yeni Bazel sürümünü şuradan edinin: GitHub sürüm sayfası veya Bazelisk.

  2. GitHub'dan Bazel'ın kaynaklarını indir bir yere çıkarmanız gerekir. Alternatif olarak, https://github.com/bazelbuild/bazel adresinden kaynak ağacını git ile kopyalayabilirsiniz.

  3. Önyükleme ile aynı ön koşulları yükleyin (Unix benzeri sistemler veya Windows için bölümüne bakın)

  4. Bazel kullanarak Bazel için bir geliştirme derlemesi oluşturun: bazel build //src:bazel-dev (veya şurada bazel build //src:bazel-dev.exe: Windows)

  5. Elde edilen ikili sayı bazel-bin/src/bazel-dev değerindedir (veya Windows'da bazel-bin\src\bazel-dev.exe). İstediğiniz yere kopyalayıp başka bir kurulum 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ınlanan bir sürümünü yükleyin veya indirin. Terminalde bazel yazarak çalıştırabildiğinizden emin olun.

Nedeni: Bazel'i bir GitHub kaynak ağacından derlemek için önceden oluşturulmuş bir Bazel ikilisine ihtiyacınız vardır. Paket yöneticisinden bir tane yükleyebilir veya GitHub. Bkz. Bazel'i Yükleme. (Dilerseniz çizik (önyükleme).)

Sorun giderme:

  • Bir terminale bazel yazarak Bazel'i çalıştıramıyorsanız:

    • Belki de Bazel ikili programınızın dizini PATH üzerinde değildir.

      Bu büyük bir sorun değildir. bazel yazmak yerine şunları yapmanız gerekir: tam yolu yazın.

    • Bazel ikili dosyası bazel (Unix'te) veya bazel.exe (Windows'ta) olarak adlandırılmıyor olabilir.

      Bu önemli bir sorun değil. İkili dosyayı yeniden adlandırabilir veya ikili programın adı (bazel) kullanılmalı.

    • İkili dosya yürütülebilir olmayabilir (Unix'te).

      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 hakkında bilginiz varsa Git clone'u kullanabilirsiniz https://github.com/bazelbuild/bazel

Diğer durumlarda:

  1. En son kaynakları zip dosyası olarak indirin.

  2. İçeriği bir yere ayıklayın.

    Örneğin, ana dizininizin altında bir bazel-src dizini oluşturun ve buradan ayıklarız.

3. Adım: Önkoşulları yükleyin

Önyüklemeyle aynı ön koşulları yükleyin (aşağıya bakın): JDK, C++ derleyici, MSYS2 (Windows'da derleme yapıyorsanız) vb.

4a. adım: Ubuntu Linux, macOS ve Unix benzeri diğer sistemlerde Bazel'i derleyin

Windows'a yönelik talimatlar için Windows'da Bazel oluşturma 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:

  1. Bash terminali başlatma

  2. cd dosyasını, Bazel'in kaynaklarını ayıkladığınız (veya kopyaladığınız) dizine kopyalayın.

    Örneğin, kaynakları ana dizininizdeki bir klasöre çıkardıysanız şu komutu çalıştırın:

    cd ~/bazel-src
    
  3. Bazel'i kaynaktan derleyin:

    bazel build //src:bazel-dev
    

    Alternatif olarak, daha küçük bir ikili oluşturmak için bazel build //src:bazel --compilation_mode=opt çalıştırabilirsiniz ancak bu işlemin derlenmesi daha yavaştır.

  4. Çıkış bazel-bin/src/bazel-dev (veya bazel-bin/src/bazel) adresinde olur.

4b. adım: Bazel'i Windows'ta derleyin

Unix benzeri sistemlerle ilgili talimatlar için Ubuntu Linux, macOS ve Unix benzeri diğer sistemler başlıklı makaleyi inceleyin.

Hedef: Özel bir Bazel ikili dosyası (bazel-bin\src\bazel-dev.exe) oluşturmak için Bazel'i çalıştırın.

Talimatlar:

  1. Komut İstemi'ni başlatın (Başlat Menüsü > Çalıştır > "cmd.exe")

  2. cd dosyasını, Bazel'in kaynaklarını ayıkladığınız (veya kopyaladığınız) dizine kopyalayın.

    Örneğin, kaynakları ana dizininizdeki bir klasöre çıkardıysanız şu komutu çalıştırın:

    cd %USERPROFILE%\bazel-src
    
  3. Bazel'i kaynaktan derleyin:

    bazel build //src:bazel-dev.exe
    

    Alternatif olarak, daha küçük bir ikili program oluşturmak için bazel build //src:bazel.exe --compilation_mode=opt komutunu çalıştırabilirsiniz; ancak derleme işlemi daha yavaştır.

  4. Çıkış bazel-bin\src\bazel-dev.exe (veya bazel-bin\src\bazel.exe) tıklayın.

5. adım: Oluşturulan ikili dosyayı yükleyin

Aslında yüklemeniz gereken bir şey yok.

Önceki adımın çıktısı, kendi kendine yeten bir Bazel ikili dosyasıdır. Kopyalayabilirsiniz hemen kullanabilirsiniz. (Bu dizinde, "bazel"i çalıştırabilmek için PATH yolunuz everywhere.)


Bazel'ı sıfırdan derleme (önyükleme)

Ayrıca, mevcut bir Bazel ikili programını kullanmadan, Bazel'ı sıfırdan derleyebilirsiniz.

1. Adım: Bazel kaynaklarını (dağıtım arşivi) indirin

(Bu adım tüm platformlar için aynıdır.)

  1. bazel-<version>-dist.zip uygulamasını şuradan indir: Örneğin GitHub bazel-0.28.1-dist.zip.

    İlgi:

    • Tek ve mimariden bağımsız bir dağıtım arşivi vardır. Mimariye veya işletim sistemine ö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, önyükleme için gereken ve normal Git kaynak ağacının parçası olmayan oluşturulmuş kaynak dosyaları içerir.)
  2. Dağıtım arşivini diskteki bir yere açın.

    Bazel'in sürüm anahtarı 3D5919B448457EE0 ile oluşturulan imzayı doğrulamanız gerekir.

2a Adımı: Ubuntu Linux, macOS ve Unix benzeri diğer sistemlerde Bootstrap Bazel

Windows talimatları için Windows'da Bazel'i başlatma başlıklı makaleyi inceleyin.

2.1. Gerekli ön koşulları yükleme

  • Durma

  • zip, unzip

  • C++ derleme araç zinciri

  • JDK. 11 sürümü gereklidir.

  • Python. 2 ve 3 sürümleri desteklenir. Bunlardan birini yüklemeniz yeterlidir.

Örneğin, Ubuntu Linux'te aşağıdaki komutu kullanarak bu gereksinimleri yükleyebilirsiniz:

sudo apt-get install build-essential openjdk-11-jdk python zip unzip

2.2. Unix'te Bootstrap Bazel

  1. Bir kabuk veya Terminal penceresi açın.

  2. cd öğesini, dağıtım arşivini açtığınız dizine ekleyin.

  3. Derleme komut dosyasını çalıştırın: env EXTRA_BAZEL_ARGS="--tool_java_runtime_version=local_jdk" bash ./compile.sh.

Derlenen çıkış output/bazel içine yerleştirilir. Bu, yerleşik JDK içermeyen, kendi kendine yeten bir Bazel ikili dosyasıdır. İstediğiniz yere kopyalayabilir veya kullanabilirsiniz yerleşik. Kolaylık sağlamak için bu ikili dosyayı PATH'inizdeki bir dizine (Linux'da /usr/local/bin gibi) kopyalayın.

bazel ikili programını tekrarlanabilir bir şekilde derlemek için ayrıca SOURCE_DATE_EPOCH "Derleme komut dosyasını çalıştır" adımını attım.

2b Adımı: Windows'da Bootstrap Bazel

Unix benzeri sistemlerle ilgili talimatlar için Ubuntu Linux, macOS ve Unix benzeri diğer sistemlerde Bootstrap Bazel.

2.1. Gerekli ön koşulları yükleme

  • MSYS2 kabuğu

  • Sıkıştırma ve sıkıştırılmış dosya açma 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 veya en yeni Derleme Araçlarını indirin.

  • JDK. Sürüm 11 gerekir.

  • Python. Sürüm 2 ve 3 desteklenir. Bunlardan birinin yüklenmesi yeterli. Windows'a özgü sürüme (https://www.python.org adresinden indirilebilir) ihtiyacınız vardır. Sürümler şunun üzerinden yüklendi: MSYS2'deki pacman çalışmaz.

2.2. Windows'da Bazel'i temellendirme

  1. MSYS2 kabuğunu açın.

  2. Aşağıdaki ortam değişkenlerini ayarlayın:

    • BAZEL_VS veya BAZEL_VC (aynı değiller): Visual Studio dizinine (BAZEL_VS) veya Visual C++ dizini (BAZEL_VC). Bunlardan birini ayarlamak yeterli olur.
    • BAZEL_SH: MSYS2'nin yolu bash.exe. Komutu aşağıdaki örneklere göz atın.

      Bunu C:\Windows\System32\bash.exe olarak ayarlamayın. (Söz konusu dosya, .) Bazel desteklemiyor bash.exe uygulamasının bu sürümü.

    • 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/jdk1.8.0_112"
    

    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/jdk1.8.0_112"
    
  3. cd dosyasını, dağıtım arşivinin paketini açtığınız dizine taşıyın.

  4. Derleme komut dosyasını çalıştırın: env EXTRA_BAZEL_ARGS="--tool_java_runtime_version=local_jdk" ./compile.sh

Derlenen çıkış output/bazel.exe içine yerleştirilir. Bu, bağımsız bir Yerleştirilmiş JDK içermeyen Bazel ikili programı. Bu dosyayı kopyalayıp istediğiniz yere yerleştirebilir veya yerinde kullanabilirsiniz. Kolaylık sağlamak için bu ikili dosyayı PATH cihazınızdaki bir dizine kopyalayın.

bazel.exe ikilisini yeniden üretilebilir şekilde derlemek için "Derleme komut dosyasını çalıştır" adımında da SOURCE_DATE_EPOCH değerini ayarlayın.

Bazel'i MSYS2 kabuğundan çalıştırmanız gerekmez. Bazel'i Komut İstemi'nden (cmd.exe) veya PowerShell'den çalıştırabilirsiniz.