Go コンパイラをソースコードからビルドする
## 概要
- ソースコードを取得する
- Go をソースコードからビルドする
- GoLand で快適にコードリーディングできるようにする
## ソースコードを取得する
https://golang.org/doc/contribute.html#checkout_go こちらを参考に。
$ git clone https://go.googlesource.com/go
$ cd go
## Go をソースコードからビルドする
ビルドしてテストを実行する。
$ cd go/src
$ ./all.bash
ビルドだけしたい場合は以下のように make.bash
を実行すれば良い。
$ ./make.bash
Building Go cmd/dist using /Users/sachaos/.asdf/installs/golang/1.15/go. (go1.15 darwin/amd64)
Building Go toolchain1 using /Users/sachaos/.asdf/installs/golang/1.15/go.
Building Go bootstrap cmd/go (go_bootstrap) using Go toolchain1.
Building Go toolchain2 using go_bootstrap and Go toolchain1.
Building Go toolchain3 using go_bootstrap and Go toolchain2.
Building packages and commands for darwin/amd64.
---
Installed Go for darwin/amd64 in /Users/sachaos/dev/go.googlesource.com/go
Installed commands in /Users/sachaos/dev/go.googlesource.com/go/bin
ビルドされた go
コマンドは go/bin
ディレクトリに格納される。
## GoLand で快適にコードリーディングできるようにする
GoLand の設定で GOROOT
を clone したレポジトリのパスにすることによって、コードジャンプなども快適にできるようになった。
![app](/images/2020-12-05/goland.png)