当 go build 不够用并且需要与 go build 一起运行额外的命令时该怎么办?go 工具是否涵盖了这个用例?如果是这样,约定是什么?我注意到可以传递额外的标志来构建工具://#cgo pkg-config: glib-2.0 gobject-2.0 etc etcimport "C"是否可以运行额外的命令或至少告诉 go build 使用 Makefile?
2 回答
慕容3067478
TA贡献1773条经验 获得超3个赞
不。go 工具并不是一个通用的构建系统。有一些针对 cgo 的规定(如 pkg-config),但它是不可扩展的。
在 go1.4 中会有generate
命令. 这将允许您运行任意命令来预处理源文件,但它始终必须是显式运行的单独步骤。你不能把它挂到go get
, go build
, 或 中go install
。
许多需要更复杂构建的项目使用脚本或 Makefile,并避开通用能力go get
。然而,get
为了简化依赖关系,库包应该努力做到。
慕雪6442864
TA贡献1812条经验 获得超5个赞
我不相信您可以添加额外的步骤。
pkg-config 是内置构建系统的特殊关键字。
通常,更复杂的构建是通过在适当的步骤调用 go build 的 makefile 来完成的。
- 2 回答
- 0 关注
- 230 浏览
添加回答
举报
0/150
提交
取消