一尘不染

是否可以通过额外的构建步骤使用Go构建?

go

当go build不够而又需要与go build一起运行额外的命令时该怎么办?Go工具是否包含此用例?如果是这样,惯例是什么?

我注意到可以通过以下方式传递额外的标志来构建工具:

//#cgo pkg-config: glib-2.0 gobject-2.0 etc etc
import "C"

是否有可能运行额外的命令或至少告诉go build使用Makefile?


阅读 211

收藏
2020-07-02

共1个答案

一尘不染

否。go工具并非旨在用作通用构建系统。对cgo有一些规定(例如pkg-config),但是它不可扩展。

在go1.4中将有generate命令。这将使您可以运行任意命令来预处理源文件,但始终必须是一个单独的步骤,该步骤必须明确运行。你不能把它嵌入go getgo buildgo install

许多需要更复杂构建的项目都使用脚本或Makefile,而避开了一般能力go get。但是,get为了简化可靠的解析,库软件包应努力使其能够使用。

2020-07-02