9 Punkte von xguru 2022-05-26 | 1 Kommentare | Auf WhatsApp teilen
  • Uber verwendet zig cc (bazel-zig-cc), um C/C++-Code zu kompilieren
    → Derzeit nur im Go-Monorepo. Eine Ausweitung auf andere Sprachen, die C/C++-Toolchains nutzen, ist geplant
    → weil sich die glibc-Version auswählen lässt und Cross-Compiling für macOS möglich ist
  • Es gibt jedoch keine Pläne, die Zig-Sprache selbst zu verwenden. Es wird also nur die C-Toolchain von Zig genutzt
  • Uber spendet an die Zig Foundation (ZSF) und hat einen Vertrag über priorisierte Bugfixes abgeschlossen (52.800 $)
  • Stärken von zig cc
    • Ein vollständig gekapselter C/C++-Compiler mit einer Größe von nur 40 MB. Das ist nur ein Zehntel eines Standard-Clang
    • Kann gegen die per Kommandozeilenargument angegebene glibc-Version linken
    • Host und Target sind entkoppelt. Unabhängig vom Host sind die Einstellungen für linux-aarch64 und darwin-x86_64 identisch
    • Das Linken mit musl ist einfach die Auswahl einer anderen libc-Version: -target x86_64-linux-musl