Go build标签:条件编译与平台适配
掌握Go的构建标签(build tags),实现条件编译、平台特定代码和功能开关。 · 难度:入门 · +15XP
构建标签基础
构建标签(也称为构建约束)允许你根据条件包含或排除文件。它们写在文件顶部,格式为//go:build。
语法
//go:build linux
package main
常用标签
| 标签 | 说明 |
|---|---|
| linux, windows, darwin | 操作系统 |
| amd64, arm64 | 架构 |
| cgo | cgo是否启用 |
| debug, release | 自定义标签 |
组合使用
//go:build linux && amd64
//go:build !windows
//go:build (linux || darwin) && cgo
文件命名约定
文件名也可以包含约束,如file_linux.go等价于//go:build linux。
练习提示
创建两个文件:platform.go和platform_windows.go,分别输出不同消息。使用go build -tags "custom"测试自定义标签。