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.exeAll lessons in this course
- Cobra Fundamentals
- Flags and Persistent Flags
- Subcommands and Command Groups
- Distributing CLI Tools