Please note that User Registration has been temporarily disabled due to a recent increase in automated registrations. If anyone needs an account, please request one here: RequestAccount. Thanks for your patience!--Wmat (talk)
Please email User:Wmat if you experience any issues with the Request Account form.

Go on RPi

Jump to: navigation, search

Go is potentially an exciting language to use on the Pi. Its compiler runs very fast and the programs it produces will be nearly as fast as C/C++. It's an easy language to learn for anyone used to C, C++, Java etc. It has a clean new standard API that makes it easier than many of the alternatives for beginners to write web applications, for example. But more importantly though, its concurrency model is very well suited to writing controller programs, so Go should be a good choice for those using the GPIO features.


For those using Raspbian on their Pi, building Go from source is the current route. This is quite easy but a bit time-consuming (allow about an hour). Here are two alternatives:

It is also worth including Git and Mercurial version control systems because these are often used by Go tools.

   sudo apt-get install git mercurial


Hello World

Having installed Go, create an empty folder and `cd` into it. Make sure the Go compiler is on your path and set GOPATH to where you are

   $ export GOPATH=$PWD

Now open an editor (nano hello.go) and insert something to your liking such as:

   package main
   import "fmt"
   func main() {
       fmt.Println("Hello, 世界")

Save, then compile and run it.

   $ go build hello.go
   $ ./hello
   Hello, 世界

Writing a Web Application

External links