- Uber C/C++ कोड को compile करने के लिए
zig cc (bazel-zig-cc) का उपयोग करता है
→ फिलहाल केवल Go Monorepo में। आगे चलकर इसे उन दूसरी भाषाओं तक बढ़ाने की योजना है जो C/C++ toolchain का उपयोग करती हैं
→ क्योंकि इसमें glibc version चुनना संभव है, और macOS cross compilation भी संभव है
- लेकिन Zig language को खुद इस्तेमाल करने की कोई योजना नहीं है। यानी Zig के सिर्फ C toolchain का उपयोग किया जा रहा है
- Uber ने Zig Foundation (ZSF) को दान दिया है, और bug fix priority contract किया है (
$52800)
zig cc की खूबियां
- सिर्फ 40MB का पूरी तरह self-contained C/C++ compiler। standard Clang के मुकाबले केवल 1/10 आकार
- command line argument में दिए गए
glibc version के साथ link किया जा सकता है
- Host और Target decoupled हैं। host चाहे कोई भी हो,
linux-aarch64 और darwin-x86_64 की setting एक जैसी रहती है
musl के साथ link करना बस एक और libc version चुनने जैसा है: -target x86_64-linux-musl
1 टिप्पणियां
zig cc: GCC/Clang के लिए एक शक्तिशाली drop-in replacement