User Tools

Site Tools


This is an old revision of the document!

Initial Setup on

To get started with Go, you have to add the variable and binds below to your $home/lib/profile

		bind -qa /sys/lib/go/bin /bin
                bind -qa $home/go/bin /bin

Testing Your Setup

When you're in a namespace which has Go set up from above you can do a quick test

[/usr/rudi] 9p% go version
go version go1.18.3 plan9/amd64

Or you can do a bit more of a complicated test by saying Hello world!

[/usr/rudi] 9p% cat hello.go
package main

import "fmt"

func main() {
	fmt.Println("Hello plan9!")

[/usr/rudi] 9p% go run hello.go
Hello plan9!

Next Steps

That's really all there is to it for getting started!

Learn Go With Tests is extremely useful for learning Go if you're new to the language.

Go for Plan9

I'm not sure if there are any Plan9 specific differences for Go.

  • If you need help, please feel free to reach out to
  • It might be possible to make Golang bindings for Plan9 C functions via cgo or c2go
    • I (rudi@9p) will probably work on this in my free time
plan_9_go_programming.1655611296.txt.gz · Last modified: 2022/06/19 04:01 by rudi