2 回答

TA貢獻(xiàn)1111條經(jīng)驗(yàn) 獲得超0個(gè)贊
您可以通過(guò)設(shè)置環(huán)境變量和 Go 工具鏈可以理解的環(huán)境變量來(lái)針對(duì)特定的單個(gè)其他平臺(tái)進(jìn)行編譯。例如,您可以通過(guò)在提供程序的主包中運(yùn)行以下命令來(lái)構(gòu)建x86_64上的 Windows:GOOS
GOARCH
GOOS=windows GOARCH=amd64 go install
不幸的是,為提供商團(tuán)隊(duì)支持的所有體系結(jié)構(gòu)構(gòu)建的過(guò)程是由每個(gè)提供商團(tuán)隊(duì)維護(hù)的構(gòu)建過(guò)程,因此在提供商之間可能會(huì)有所不同。但是,一種常見的模式(對(duì)于 AWS 提供商來(lái)說(shuō)也是如此)是使用 GoReleaser 跨多個(gè)平臺(tái)構(gòu)建、標(biāo)記和發(fā)布版本。
在撰寫本文時(shí),AWS 提供商的 .goreleaser.yml
指定了受支持的操作系統(tǒng)和架構(gòu)組合的矩陣。因此,如果您安裝了 GoReleaser,則可以使用 goreleaser
build 為同一組目標(biāo)構(gòu)建分發(fā)包。
對(duì)于團(tuán)隊(duì)使用 GoReleaser 管理其版本的其他提供商來(lái)說(shuō),情況也是如此。一些提供商可能會(huì)使用其他模式,但在撰寫本文時(shí),GoReleaser是Terraform文檔中推薦的技術(shù),因此這是一個(gè)非常常見的選擇。

TA貢獻(xiàn)1788條經(jīng)驗(yàn) 獲得超4個(gè)贊
您可以傳遞環(huán)境變量,并用于所需的操作系統(tǒng)和體系結(jié)構(gòu)。GOOS
GOARCH
例如:為L(zhǎng)inux ppc64架構(gòu)構(gòu)建。GOOS=linux GOARCH=ppc64 go build
- 2 回答
- 0 關(guān)注
- 107 瀏覽
添加回答
舉報(bào)