编译目标 (Targets)

Zig 的一个核心特性是其强大的交叉编译能力。它可以轻松地为不同的架构和操作系统编译代码,而无需安装外部 SDK。

目标三元组 (Target Triple)

Zig 使用“架构-操作系统-ABI”的三元组格式来指定编译目标。

例如:

  • x86_64-linux-gnu: 64 位 x86 架构,Linux 操作系统,GNU ABI (glibc)。
  • x86_64-linux-musl: 64 位 x86 架构,Linux 操作系统,musl ABI。
  • aarch64-macos-none: ARM64 架构,macOS。
  • wasm32-freestanding: 32 位 WebAssembly,无操作系统。

查看可用目标

使用 zig targets 命令可以列出所有支持的目标。

$ zig targets

指定目标

在使用 zig buildzig build-exe 等命令时,可以使用 -Dtarget-target 参数来指定目标。

$ zig build-exe main.zig -target x86_64-windows

原生目标

如果未指定目标,Zig 默认编译为当前主机的目标(native target)。