Go on Harvey

Álvaro Jurado edited this page Dec 13, 2016 · 4 revisions

Go programming language in Harvey

Bootstrapping Go

For now, we must use another operating system to have Go working on Harvey, as we do with normal C programs compiling in Linux and running in Harvey. So let's go to install Go first in Linux, if you use any other OS supported by Go, pay attention to instructions for your platform.

For Go 1.5 and later you need a go install to bootstrap the go compiler written in go.

mkdir go1.4
cd go1.4
git clone git@github.com:golang/go.git go
cd go/src
git checkout release-branch.go1.4
bash make.bash

Building Go for Harvey

Now make a dir for Go 1.5 for Harvey:

mkdir go1.7
export GOROOT_BOOTSTRAP=~/go1.4/go
cd go1.7
git clone git@github.com:Harvey-OS/go
cd go/src
git checkout plan9port
GOOS=plan9 bash make.bash

And you have Go ready for building programs for Harvey or for building Go itself in Harvey. Just move to the place where your Go program is:

GOOS=plan9 /where-go-is/bin/go build -ldflags "-H linux -R 0x200000" 

or whatever.go if you just want to do one file. And you can run it on harvey.

We usually drawterm in to Harvey for having all files there, and usually doing:

bind /mnt/term/home /home

so all paths work.