go言語コンパイラのビルド方法が,半年前に触ったときと違ったので,現在の方法をメモっておく.
環境
インストール方法
ソースのクローン
半年前はmercurialで管理していた気がするが,いつの間にかgitに移っていた. リポジトリはgoogle codeのものとgithubのものがあるが,後者はミラーリポジトリなので,前者からクローンする.
$ cd ~/ $ git clone https://go.googlesource.com/go
ビルド済みGo言語コンパイラのインストール
ここからが半年前と違うところ.
以前はgoコンパイラが既に入っているかいないかにかかわらず, ~/go/src/
以下で all.bash
を実行するだけで,go言語コンパイラをビルドできたような記憶がある.
しかし,今は all.bash
を実行すると,以下のように ~/go1.4
にgo言語(v1.4)の実行環境を入れるよう怒られる.
$ ./all.bash ##### Building Go bootstrap tool. cmd/dist ERROR: Cannot find /home/tnishinaga/go1.4/bin/go. Set $GOROOT_BOOTSTRAP to a working Go tree >= Go 1.4. ./make.bash: line 121: /home/tnishinaga/go1.4/bin/go: No such file or directory
そのため,go1.4の実行環境を落としてきて ~/go1.4
に置く.
go言語コンパイラの実行環境は,以下から持ってこられる.
$ mkdir tmp $ wget https://storage.googleapis.com/golang/go1.4.2.linux-amd64.tar.gz $ tar zxvf go1.4.2.linux-amd64.tar.gz -C tmp/ $ mv tmp/go ~/go1.4
go言語コンパイラのビルド
後は普通に all.bash
を実行するだけ.
$ cd ~/go/src/ $ ./all.bash
ビルドが終わったあとは, .bashrc
などに
export GOROOT=$HOME/go export PATH=$PATH:$GOROOT/bin
と書いておくと,ビルドしたgo言語コンパイラにパスが通って使えるようになる.
以上.