Sinatraのあらかると

記録することで、環境構築で悩まない。

Googleの新しい言語Go。

ずーっと試したいと思っていた新言語Go。
検索できるドキュメントが落ち着くまではとみてました。
ずーっとgorubyがGoで実装されているんだと思っていました。
rvmでinstallしようとするとエラーに見舞われるのは、Goが入っていないから??って思ったが、実はgorubyはcode golfといって、
コードを短く書くことを競うコードゴルフらしいんです。
http://jp.rubyist.net/magazine/?0022-RubiMaGolf
違うんだ…ってGoを入れてから気づきました。
ビルドミスはなぜ??

さて、Goのビルド時の記録。


cd
emacs ~/.bash_profile
//ここでbashを触るのでこのウインドウは、
PATHとGoが確認できるまで閉じない。
export GOROOT=$HOME/go
export GOOS=darwin
export GOARCH=amd64
(32-bitなら、
export GOARCH=386
にする。)
export GOBIN=$GOROOT/bin
($HOME/go/binにならないかもしれない。
mkdirで$HOMEにbinを作ったなら、
$HOME/binでいいがgoフォルダへ、
ポイするとそのままで使える。)
export PATH=$GOBIN:$PATH
を一番下にコピペする。
そして、保存!



source .bash_profile
で設定を反映する。
env | grep '^GO'
で、exportされたGO設定がされているか。
空文字列だと変だ。

env | grep '^PATH'
でちゃんと/Users/ユーザ名/binされているか。

とりあえず、
sudo easy_install mercurial
してみた。エラーがなかったので、ここまで。

cd
mkdir ./go
でgoファイルを作成。
のちに、
hg clone -r release
https://go.googlecode.com/hg/ $GOROOT
でgoファイルに入れ込み。

ここで、
cd
mkdir bin

cd $GOROOT/src
./all.bash
1分ほどで、コンパイル終了。

cat hello.go
任意のフォルダにhello.goを作成し、
http://golang.org/
より、
package main

import "fmt"

func main() {
fmt.Println("Hello, 世界")
}
を保存する。

そして、
8g hello.go
8l hello.8
./8.out


Hello,世界
と出力されればOK。


最後に、Vimの設定を
/go/misc/vim/go.vim ~/.vim/syntax/
goファイルのなかのmiscフォルダ内vimから、
syntaxのなかになる.vimファイル類を、
.vimフォルダ類のそれぞれへポイ。
.vimrcへ
autocmd BufNewFile,BufRead *.go :set filetype=go


を追加してGoの世界へようこそでした。

追伸:Controlというテレビ番組をみていて、
ガリレオの文系版だと思った。
エセ理系な私はガリレオの方が好きだ。
学者と刑事は最高の相棒なんだろうか。

追加:どこかでGoの記事をみたなーって思っていたら、日経Linux 2月号でMatzが記事にしてました。記事のラストに書かれているコードを実際書いて結果をみてみました。

下記サイトを参考にしました。
http://www.serendip.ws/archives/3556
http://www.pictnotes.jp/?p=195
http://blog.rspepe.com/?p=105

Copyright © 2007-2017 Takayuki Kamiyama. All Rights Reserved.