2009年11月11日水曜日

Go言語のインストール

The Go Programming Language
Go言語なるものがでていたので、往年のコンピュータ言語フリークとしては試さねば・・

とりあえず、説明動画を見てみる


とにかく速いらしい。。
この動画では具体的なことがわからないので、とりあえずインストールしてみる。

まずは http://golang.org/ に行ってみた。
右側に Getting Started があるのでそれに従ってみる。。


読み進めると "Go compilers support two operating systems (Linux, Mac OS X) " とある。LinuxとMacに対応か。。

Windowsは??

個人的にWinは使っていないので、とりあえず深く考えないことにして手元にあった Mac でインストール。
以下、備忘録。


◆ ステップ-1 : 環境変数の設定 ◆
$GOROOT, $GOOS, $GOARCH, $GOBIN を指定しないといけないらしいので、.bash_profile に設定して

$ source .bash_profile
で .bash_profile を再読み込みさせる。
ついでに、GOxxx変数に指定したディレクトリは存在しないものだったので、作っておいた。


◆ ステップ-2 : Mercurial と Go のインストール ◆

$ hg
-bash: hg: command not found
$ sudo easy_install mercurial
hgコマンド叩いて Mercurial 入ってないことを確認したので、インストール。
いくつか準備が足りず、インストールに失敗する。。。早く入れたいのでとりあえず Mercurial のサイトから直接ダウンロード( http://mercurial.berkwood.com/ )してインストールした。

$ hg clone -r release https://go.googlecode.com/hg/ $GOROOT
としてみると、
ValueError: unknown locale: UTF-8
となってエラーで止まってしまう。。

.bash_profile に
export LC_ALL=ja_JP.UTF-8
export LANG=ja_JP.UTF-8
とセットして再読み込みさせてみると、今度は通った。。


◆ ステップ-3 : gcc のインストール ◆
”The Go tool chain is written in C. To build it, you need to have GCC, the standard C libraries, and the parser generator Bison installed. On OS X, they can be installed as part of Xcode.”
とあったが、Xcodeは既にインストールしてあるので gcc 環境のセットアップはすんなりスキップ


◆ ステップ-4 : Go のビルド ◆

$ cd $GOROOT/src
$ ./all.bash


◆ ステップ-5 : Hello, World を動かしてみる ◆

$ cat >hello.go <<EOF
package main

import "fmt"

func main() {
fmt.Printf("hello, world\n")
}
EOF
$ 8g hello.go
$ 8l hello.8
$ ./8.out
hello, world
$

オンラインドキュメントには 6g と 6l を使ってビルドする例になっているが、$GOBINのディレクトリの中身をみたら 6g, 6l はなく、8g と 8l になっていたのでそれらを利用。

"6g is the Go compiler for amd64; it will write the output in file.6. The ‘6’ identifies files for the amd64 architecture. The identifier letters for 386 and arm are ‘8’ and ‘5’. That is, if you were compiling for 386, you would use 8g and the output would be named file.8. "

と書いてあるので、そのままですが。。 最初この注意書きを読み飛ばしてビルドできずに焦りました。。


とりあえず、動いた〜!!!

#golang

0 件のコメント: