Bağımlılık grafiğini inceleme

Başarılı bir derlemede, tüm bağımlılıklar BUILD dosyasında açıkça belirtilir. Bazel, projenin bağımlılık grafiğini oluşturmak için bu ifadeleri kullanır. Bu sayede doğru artımlı derlemeler yapılabilir.

Örnek projenin bağımlılıklarını görselleştirmek için çalışma alanı kökünde şu komutu çalıştırarak bağımlılık grafiğinin metin temsilini oluşturabilirsiniz:

bazel query --notool_deps --noimplicit_deps "deps(//main:hello-world)" \
  --output graph

Yukarıdaki komut, Bazel'e hedef //main:hello-world için tüm bağımlılıkları (ana makine ve gizli bağımlılıklar hariç) aramasını ve çıkışı grafik olarak biçimlendirmesini söyler.

Ardından, metni GraphViz içine yapıştırın.

Ubuntu'da GraphViz ve xdot Dot Viewer'ı yükleyerek grafiği yerel olarak görüntüleyebilirsiniz:

sudo apt update && sudo apt install graphviz xdot

Ardından, yukarıdaki metin çıktısını doğrudan xdot'a aktararak grafiği oluşturabilir ve görüntüleyebilirsiniz:

xdot <(bazel query --notool_deps --noimplicit_deps "deps(//main:hello-world)" \
  --output graph)

Gördüğünüz gibi, örnek projenin ilk aşamasında ek bağımlılık içermeyen tek bir kaynak dosya oluşturan tek bir hedef vardır:

&quot;hello-world&quot; için bağımlılık grafiği

Şekil 1. hello-world için bağımlılık grafiği, tek bir kaynak dosyasıyla tek bir hedef gösterir.

Çalışma alanınızı ayarladıktan, projenizi oluşturduktan ve bağımlılıkları inceledikten sonra biraz karmaşıklık ekleyebilirsiniz.