我正在尝试运行/构建一个使用 vips 的 GoLang 包。当我尝试编译程序时,出现此错误:
go build gopkg.in/h2non/bimg.v1: invalid flag in pkg-config --cflags: -Xpreprocessor
这是我的规格:
macOS Mojave Version 10.14.3
vips Version 8.7.4
go Version 1.11.5 darwin/amd64
Run Code Online (Sandbox Code Playgroud)
我阅读了一些添加 CGOALLOWEDFLAGS 的问题,我也尝试过,但没有运气。
CFLAGS是提供给 C 编译器的额外标志。(常用于make,参见:https : //www.gnu.org/software/make/manual/html_node/Implicit-Variables.html)
该gopkg.in/h2non/bimg.v1/vips.go使用pkg-config,以产生额外的标志。它有-Xpreprocessor标志,这是 CGo 不允许的(在撰写本文时默认情况下)。
出于安全原因,只有有限的一组标志是允许的,尤其是
-D,-I和-l。要允许其他标志,请设置CGO_CFLAGS_ALLOW为与新标志匹配的正则表达式。要禁止其他情况下允许的标志,请设置CGO_CFLAGS_DISALLOW为匹配必须禁止的参数的正则表达式。在这两种情况下,正则表达式都必须匹配一个完整的参数:允许-mfoo=bar、使用CGO_CFLAGS_ALLOW='-mfoo.*',而不仅仅是CGO_CFLAGS_ALLOW='-mfoo'。(参见:https : //golang.org/cmd/cgo/)
要允许-Xpreprocessor,您可以设置CGO_CFLAGS_ALLOW=-Xpreprocessor. 例如:
CGO_CFLAGS_ALLOW=-Xpreprocessor go vet ./...
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1478 次 |
| 最近记录: |