我如何告诉 cgo 不要编译文件?

how do I tell cgo not to compile a file?

我说的是常规 go 文件

// +build !windows

但是 cgo 将其解释为要编译的 c 代码

那我该怎么办?

构建约束必须出现在包声明之前。

不正确

package mypackage

// +build !windows

// #include <header.h>
//
// ...
import "C"

正确

// +build !windows

package mypackage

// #include <header.h>
//
// ...
import "C"