
Como gerar o build do seu projeto Go com Make (Unix e Windows)
Introdução
Automatizar o processo de build do seu projeto Go facilita o desenvolvimento e reduz erros. O Make é uma ferramenta clássica para isso, disponível em sistemas Unix e também no Windows. Neste tutorial, você aprenderá a instalar o Make e criar scripts para build, run e clean do seu projeto Go.
Antes de começar: Para testar o build e os comandos deste tutorial, utilize a aplicação criada no tutorial anterior: Como criar um ambiente Go com Hot Reload usando Air. Siga aquele passo a passo para gerar sua aplicação Go de exemplo.
1. Instalando o Make
Linux
A maioria das distribuições já vem com o Make instalado. Caso não tenha, instale com:
sudo apt update && sudo apt install make -y
macOS
No macOS, o Make é instalado junto com as ferramentas de linha de comando do Xcode:
xcode-select --install
Windows
Você pode instalar o Make no Windows de diferentes formas:
a) Usando Chocolatey
choco install make
b) Usando MSYS2
- Baixe e instale o MSYS2: https://www.msys2.org/
- Abra o terminal MSYS2 e execute:
pacman -S make
c) Usando GnuWin
- Baixe o GnuWin Make: http://gnuwin32.sourceforge.net/packages/make.htm
- Adicione o diretório do
make.exe
ao PATH do Windows.
2. Criando o Makefile
No diretório raiz do seu projeto, crie um arquivo chamado Makefile
com o seguinte conteúdo:
.PHONY: build run clean local build-windows build-linux-arm64 build-linux-amd64
build:
go build -o bin/app main.go
build-windows:
GOOS=windows GOARCH=amd64 go build -o bin/app.exe main.go
build-linux-arm64:
GOOS=linux GOARCH=arm64 go build -o bin/app-linux-arm64 main.go
build-linux-amd64:
GOOS=linux GOARCH=amd64 go build -o bin/app-linux-amd64 main.go
run: build
./bin/app
clean:
rm -rf bin/
local:
air
Dica:
- Para gerar o executável para Windows, use
make build-windows
(gerabin/app.exe
).- Para Linux ARM64, use
make build-linux-arm64
(gerabin/app-linux-arm64
).- Para Linux x86_64, use
make build-linux-amd64
(gerabin/app-linux-amd64
).- No Windows, troque
./bin/app
porbin/app.exe
erm -rf bin/
porrmdir /S /Q bin
se estiver usando o prompt padrão.- Para desenvolvimento local com hot reload, utilize o comando
make local
(é necessário ter o Air instalado). Assim, o servidor será reiniciado automaticamente a cada alteração no código.
3. Usando o Make
No terminal, execute:
make build # Compila o projeto
make run # Compila e executa
make clean # Remove os arquivos gerados
make local # Inicia o servidor com hot reload usando Air
Conclusão
Com esses scripts, você automatiza tarefas comuns do seu projeto Go, tornando o desenvolvimento mais produtivo e padronizado em diferentes sistemas operacionais.