0Pricing
Go Academy · Lesson

Distributing CLI Tools

Cross-compilation, goreleaser, and homebrew taps

go install for local distribution

go install github.com/user/tool@latest compiles and installs the binary into $GOPATH/bin. Users need Go installed.

Cross-compilation

Go cross-compiles natively. Set GOOS and GOARCH to target different operating systems:

GOOS=linux  GOARCH=amd64 go build -o myapp-linux-amd64
GOOS=darwin GOARCH=arm64 go build -o myapp-darwin-arm64
GOOS=windows GOARCH=amd64 go build -o myapp-windows-amd64.exe

All lessons in this course

  1. Cobra Fundamentals
  2. Flags and Persistent Flags
  3. Subcommands and Command Groups
  4. Distributing CLI Tools
← Back to Go Academy