用途:指导智能体完成 Zig 编译器调用,涵盖优化模式、输出类型、zig cc 作为 C 编译器替代、错误信息解读以及 Zig 编译流程。
主要能力与用法: 基本编译:zig run src/main.zig 编译并运行单文件;zig build-exe src/main.zig 生成可执行文件;zig build-lib src/mylib.zig 生成静态库,加 -dynamic 生成共享库;zig build-obj 生成目标文件;-femit-bin=myapp 指定输出名。 优化模式:-O Debug(默认,快速编译、保留全部安全检查与调试信息)、-O ReleaseSafe(优化并保留安全检查)、-O ReleaseFast(最高速度,移除安全检查)、-O ReleaseSmall(最小体积)。Debug 与 ReleaseSafe 会检测整数溢出、数组越界、空指针解引用、unreachable、枚举标签校验并 panic;ReleaseFast 将安全检查变为未定义行为,建议先用 ReleaseSafe 验证。 目标指定:zig targets 列出支持目标;-target aarch64-linux-gnu 等交叉编译;嵌入式用 thumb-freestanding-eabi;WebAssembly 用 wasm32-freestanding 并加 --export=main。目标三元组格式为 cpu-os-abi。 zig cc:内置基于 Clang 与 musl 的 C/C++ 编译器,无需系统 libc。可编译 C/C++、交叉编译 ARM、静态链接 musl,并可在 CMake 中通过 CC="zig cc" CXX="zig c++" 或 Makefile 中 CC="zig cc" 使用。 输出格式:--emit-llvm-ir 生成 LLVM IR,--emit-asm 生成汇编,-femit-asm=myapp.s 同时输出二进制与汇编。 语法检查与格式化:zig ast-check 检查语法,zig fmt 格式化,zig fmt --check 仅检查,zig tokenize 分词。 错误信息:包含文件行号、列指示箭头与 note 上下文;常见错误包括类型不匹配、未声明标识符、编译期整数溢出、对常量赋值、未使用变量或参数(可用 _ = x; 抑制)。 环境:zig version 查看版本,zig env 查看构建配置与标准库位置。
适用场景:系统编程、交叉编译、嵌入式与 WASM 构建、以 zig cc 替代 gcc/clang 的 C/C++ 项目。
限制:资料未提供具体版本要求、平台支持范围、性能数据或收费信息;多文件项目、C 互操作、交叉编译 sysroot 与调试需参考相关技能。