如何针对Linux与Windows进行不同的构建

时间:2017-08-28 01:38:34

标签: go

我正在研究Go语言。 我有一个问题:例如,我将创建一个新的库,它应该使用一个Go包中的方法用于Windows,另一个用于Linux。

我只想问,是否有一种组织构建过程的便捷方式? 当然,我可以为每个操作系统创建一个项目,并为每个操作系统更改导入名称。

1 个答案:

答案 0 :(得分:5)

使用构建约束和文件名。见Package buildPackage os的源代码有很多示例:https://golang.org/src/os/。转到源代码:https://go.googlesource.com/gohttps://github.com/golang/go

Unix的构建禁令:

xvfb

一些构建文件名:

// +build darwin dragonfly freebsd linux nacl netbsd openbsd solaris

Go工具和标准库最初使用构建文件名,然后随着需求变得越来越复杂,开始使用构建约束。