O comando go build se comporta de maneira similar ao comando go env. Você pode definir as variáveis de ambiente GOOS ou GOARCH para compilar uma plataforma diferente usando o go build.
Se não estiver usando um sistema Windows, compile um binário windows do app, definindo a variável de ambiente GOOS para windows ao executar o comando go build:
O resultado da ação de listar o diretório mostra que agora existe um arquivo executável do Windows, app.exe no diretório do projeto:
Usando o comando file, você pode obter mais informações sobre esse arquivo, confirmando sua compilação:
Também é possível definir uma, ou ambas as variáveis de ambiente no momento da compilação. Execute o seguinte:
Seu executável app será substituído por um arquivo feito de uma arquitetura diferente. Execute o comando file neste binário:
Definindo suas variáveis de ambiente local GOOS e GOARCH, agora você poderá compilar binários para qualquer uma das plataformas compatíveis do Go, sem precisar de uma configuração ou preparação complicada. Em seguida, você usará as convenções de nome do arquivo para manter seus arquivos totalmente organizados e compilar em plataformas específicas - automaticamente, sem build tags.