* GOOS=linux GOARCH=arm ./make.bash #you get the picture
GOOS can be windows, darwin, freebsd, netbsd, plan9.
Then when you want to cross-compile your app, you do:
GOOS=linux GOARCH=arm go build myApp.go
That's it. Now you have a statically linked binary that you can drop on whatever your target is. As someone who has had to cross-compile a lot of C and C++ code, I find this simplicity to be a huge win.
* Download Go source
* Extract, cd go/src/
* GOOS=linux GOARCH=386 ./make.bash #this will build the linux_386 toolchain
* GOOS=linux GOARCH=amd64 ./make.bash #linux_amd64
* GOOS=linux GOARCH=arm ./make.bash #you get the picture
GOOS can be windows, darwin, freebsd, netbsd, plan9.
Then when you want to cross-compile your app, you do:
GOOS=linux GOARCH=arm go build myApp.go
That's it. Now you have a statically linked binary that you can drop on whatever your target is. As someone who has had to cross-compile a lot of C and C++ code, I find this simplicity to be a huge win.