Skip to content

Instantly share code, notes, and snippets.

@dustin
Last active October 13, 2015 07:08
Show Gist options
  • Save dustin/4158025 to your computer and use it in GitHub Desktop.
Save dustin/4158025 to your computer and use it in GitHub Desktop.
Go Cross Compilation
#!/bin/sh
hg purge -v --all
./make.bash
env GOOS=windows ./make.bash --no-clean
env GOOS=windows GOARCH=386 ./make.bash --no-clean
env GOOS=linux ./make.bash --no-clean
env GOOS=linux GOARCH=amd64 ./make.bash --no-clean
env GOOS=linux GOARCH=386 ./make.bash --no-clean
env GOOS=linux GOARCH=arm ./make.bash --no-clean
env GOOS=freebsd GOARCH=amd64 ./make.bash --no-clean
#!/bin/sh
p=`pwd`
binname=`basename $p`
env GOARCH=386 GOOS=linux CGO_ENABLED=0 go build -v -o $binname/$binname.lin32 &
env GOARCH=arm GOOS=linux CGO_ENABLED=0 go build -v -o $binname/$binname.linarm &
env GOARCH=arm GOARM=5 GOOS=linux CGO_ENABLED=0 go build -v -o $binname/$binname.linarm5 &
env GOOS=linux CGO_ENABLED=0 go build -v -o $binname/$binname.lin64 &
env GOOS=freebsd CGO_ENABLED=0 go build -v -o $binname/$binname.fbsd &
env GOOS=windows go build -v -o $binname/$binname.exe &
env GOARCH=386 GOOS=windows go build -v -o $binname/$binname.win32.exe &
env GOOS=darwin go build -v -o $binname/$binname.mac &
wait
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment