Skip to content

Plan 9にGoをインストールする

Goのバージョンが1つでもある場合

Section titled “Goのバージョンが1つでもある場合”

手元に1つでもGoのバージョンがあるなら、それをbootstrapバージョンとして利用できる。

Terminal window
mv go go1.22
curl -OL https://go.dev/dl/go1.24.2.src.tar.gz
tar xf go1.24.2.src.tar.gz
cd go/src
GOROOT_BOOTSTRAP=$home/go1.22 ./make.rc

利用できるツールチェーンの下限はGoツールチェーンをブートストラップ可能な最小バージョンの条件に書いた。

1つもGoのバージョンを持っていない場合

Section titled “1つもGoのバージョンを持っていない場合”

そもそも GOROOT_BOOTSTRAP で使うバージョンも持っていないなら、Go 1.4をCでビルドするところから順番にビルドすればそのうち最新バージョンに到達するけれど、別の環境でビルドしたbootstrapバージョンを持ってくる方が早いし簡単。

いちおう plan9/amd64 の場合はPlan 9で最初からGoをビルドするに書いた。

Plan 9では一般的にコマンドを /binbind(1) するが、この場合Goからみると自分自身のファイルパスが /bin/go となって GOROOT を特定できない。なので rc(1)path を設定するか、以下の環境変数を設定しておく必要がある。

Terminal window
GOROOT=$home/go
GOPATH=$home
GOBIN=$home/bin/$cputype

cputype についてはPlan 9でのobjtypeとcputypeに書いた。