3 ms·
go build It compiles a binary, just send it to the server and it will run, no need to even have go installed on the server (or any libs really).
by pallinder 13y ago
go build
It compiles a binary, just send it to the server and it will run, no need to even have go installed on the server (or any libs really).
- chc 13y agoDoesn't this require your development machine to use the same architecture and OS as your server?
- wtf_is_up 13y agoNo. It's simple to build Go toolchains for whatever your deploy os/arch target is. Then you just cross-compile. * 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.
- chc 13y agoThanks for that. It's been a while since I used Go. That is quite nice.