参照URLは
|
http://golang.org/doc/install.html
1. システム変数
$GOROOTと$GOBINが要るらしいから追加
export GOROOT=$HOME/dev/go
export GOBIN=$HOME/dev/bin
2. Mercurialから「GO」のソースを落とす。
$ hg clone -r release https://go.googlecode.com/hg/ $GOROOT
3. GOをインストール
$ cd $GOROOT/src
$ ./all.bash
$GOARCH is set to <>, must be amd64, 386, or arm
$GOARCH変数が必要らしからGOARCHを作ってインストール再挑戦。
$ export GOARCH=386
$ ./all.bash
$GOOS is set to <>, must be darwin, linux, or nacl
$GOOSも必要らしい。。(-(エ)-)追加して再挑戦。
$ export GOOS=linux
$ ./all.bash
installed quietgcc as /home/babukuma/dev/bin/quietgcc but 'which quietgcc' fails
double-check that /home/babukuma/dev/bin is in your $PATH
(-(エ)-)PATHの追加も要るらしい。
$ export PATH=$PATH:$GOBIN
$ ./all.bash
bison -y -d cc.y
make: bison: コマンドが見つかりませんでした
make: *** [y.tab.h] エラー 127
( -(エ)-;) ふう。。。英語ができなから。こんなのが難しいな。。
読んでもよくわからないし。。どうやらbisonというのが必要らしい。インストール。。
$ sudo apt-get install bison
$ ./all.bash
--- cd ../test
0 known bugs; 0 unexpected bugs
成功!!
4. Hello GO!を作ってみる。
ソース作成
ファイルの拡張子は「.go」らしい
$ vi hello.go
package main
import "fmt"
func main() {
fmt.Printf("Hello GO!\n")
}
コンパイル
コンパイラーはx386なので「8g」を利用する。
$ 8g hello.go
$ ll
合計 12
-rw-r--r-- 1 babukuma babukuma 5160 2009-11-13 11:31 hello.8
-rw-r--r-- 1 babukuma babukuma 71 2009-11-13 11:30 hello.go
「hello.8」ファイルが生成された。
リンク
リンクをして実行可能なファイルを作る。
$ 8l hello.8
$ ll
合計 584
-rwxr-xr-x 1 babukuma babukuma 581719 2009-11-13 11:32 8.out
-rw-r--r-- 1 babukuma babukuma 5160 2009-11-13 11:31 hello.8
-rw-r--r-- 1 babukuma babukuma 71 2009-11-13 11:30 hello.go
「8.out」が出てきた。8.outは気に入らないから、出力ファイル名を指定してみた。
$ 8l -o hello.out hello.8
$ ll
合計 1156
-rwxr-xr-x 1 babukuma babukuma 581719 2009-11-13 11:32 8.out
-rw-r--r-- 1 babukuma babukuma 5160 2009-11-13 11:31 hello.8
-rw-r--r-- 1 babukuma babukuma 71 2009-11-13 11:30 hello.go
-rwxr-xr-x 1 babukuma babukuma 581719 2009-11-13 12:27 hello.out
実行
$ ./hello.out
Hello GO!
5. システム変数まとめ。
面倒だから「.bashrc」に追加した。
export GOROOT=$HOME/dev/go
export GOBIN=$HOME/dev/bin
export GOARCH=386
export GOOS=linux
export PATH=$PATH:$GOBIN
以外に簡単にできた。
お疲れ。俺