如何让 Go 找到库headers?

How to let Go find library headers?

我已经搜索了一段时间,但找不到解决此问题的方法。

因为像 SDL2 这样的库不是 OpenBSD 操作系统的一部分,所以它们存储在 /usr/local 中。 Go 似乎在 /usr/include 而不是 /usr/local/include 中寻找 headers。我在 go env 中看到了标志,但我无法编辑它们。

有没有不用符号链接就能解决这个问题的方法?也许 Go 相当于 C 编译器中常见的 -I 标志?

如果你正在使用 Cgo,你必须使用这样的东西:

/*
#cgo CFLAGS: -I/usr/local/ssl/include
#cgo LDFLAGS: -lcrypto -L/usr/local/ssl/lib
*/
import "C"

在本例中,我使用它针对最新的 OpenSSL 进行编译。根据您的需要进行编辑。