I've made a Golang application and I've no problem getting it to work on Heroku using the buildpack but now I would like to distribute the compiled program to others without the source code.
Is it possible to get the binary working on Heroku without the source code or does Heroku need the source code to create its own compiled version?
The Heroku buildpack for Go doesn't do anything special: it just calls out to the Go tool to compile the binary based on whether you use godeps or not.
Just call go build
in the directory of your package main
or go build repo.com/you/yourmainpackage
to output a binary you can distribute.
In addition, you'll want to see this buildpack if you want to have others run a provided binary on Heroku: https://github.com/ph3nx/heroku-binary-buildpack — make sure the binary has been compiled for amd64 Linux if you are targeting Heroku.