3

go工具可以创建一个二进制文件并将其放置到GOBIN如果包包含一个main子包(或者如果包是一个main)。go install package是否有可能使用单个命令创建几个(至少两个)二进制文件?意思是不用GNU make于此目的。

谢谢你。

4

2 回答 2

3

如果所有命令都在一个公共目录下,使用go install root/.... 后面的三个点告诉 go 命令对该目录下的所有包执行此操作。相同的三点符号适用于go getorgo build并且可能所有 go 命令。

如果导入路径包含一个或多个“...”通配符,则它是一种模式,每个通配符都可以匹配任何字符串,包括空字符串和包含斜杠的字符串。这样的模式扩展到所有在 GOPATH 树中找到的名称与模式匹配的包目录。作为一种特殊情况,x/... 匹配 x 以及 x 的子目录。例如,net/... 在其子目录中扩展为 net 和 packages。

http://golang.org/cmd/go/

于 2013-09-26T17:53:24.090 回答
2

AFAIK 这是不可能的。通常的惯例是将二进制文件放入cmd以最后一个路径元素作为包的包中。然后人们可以像这样安装所有的二进制文件:

go get code.google.com/p/codesearch/cmd/{cindex,csearch,cgrep}
于 2013-09-26T13:13:25.777 回答