Go言語 をインストール・設定までの覚書き
目的
Go言語を覚えてある程度使えるレベルにまでなるために、
学習時点での覚書きを残して。まずは、とっかかりとして、
インストールから簡単に動かせるまでを覚書きしておく。
インストール・設定
% cd /usr/local/src/ % wget https://go.googlecode.com/files/go1.2.darwin-amd64-osx10.8.tar.gz % tar zxvf go1.2.darwin-amd64-osx10.8.tar.gz % mv go /usr/local/go1.2 % ln -s /usr/local/go1.2 /usr/local/go
環境パスを.zshrcに予め読み込まれるように追記する。
% cd ~
% vi ~/.zshrc
追記する内容は次の通り。
export GOROOT=/usr/local/go export PATH=$PATH:$GOROOT/bin
パス設定を反映して、goコマンドで、パスが通っていることを確認。
% source ~/.zshrc % go Go is a tool for managing Go source code. Usage: go command [arguments] The commands are: build compile packages and dependencies clean remove object files env print Go environment information fix run go tool fix on packages fmt run gofmt on package sources get download and install packages and dependencies install compile and install packages and dependencies list list packages run compile and run Go program test test packages tool run specified go tool version print Go version vet run go tool vet on packages Use "go help [command]" for more information about a command. Additional help topics: c calling between Go and C gopath GOPATH environment variable importpath import path syntax packages description of package lists testflag description of testing flags testfunc description of testing functions Use "go help [topic]" for more information about that topic.
動作確認
テスト用にhello worldをgoで書いてみる。
ファイル名は、hello.go
package main import "fmt" func main() { fmt.Printf("hello, world\n") }
goのrunで実行する。
% go run hello.go hello, world
開発環境を整える
Goでの開発を行いやすくするために、Go Code を利用する。
Go codeでの使い方tipsなどは、また別途で書くつもり。
開発環境のエディタは、Emacsを利用するため、まずは
シンタックスハイライトと自動補完できるように環境を整える。
How to Write Go Code - The Go Programming Language と、Screen cast を参考に進める。
Go Codeのインストール
まずは、$GOPATHを設定する。
% vi $HOME/.zshrc
環境パスを次のように修正。
export GOPATH=$HOME/Sandbox/golang/gocode export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
Go Codeをダウンロードする。
% source $HOME/.zshrc % go get -u github.com/nsf/gocode % ls $GOPATH bin/ src/
Go Codeで、さっき書いたhello.goをプロジェクトとして、installして
バイナリとして動かしてみる。
% mkdir -p $GOPATH/src/github.com/nsf/hello % cp hello.go $GOPATH/src/github.com/nsf/hello/hello.go % cd $GOPATH/src/github.com/nsf/hello/ % go install % ls $GOPATH/bin hello % GOPATH/bin/hello hello, world
Emacs/自動補完設定(go-autocomplete)
Emacsの前提の設定として、auto-compelete-modeがインストールされていること.
go-autocomplete.el ファイルを、emacsの設定ファイルを置いてある場所にコピーさせればok.
% cp $GOPATH/src/github.com/nsf/gocode/emacs/go-autocomplete.el $HOME/.emacs.d/elisp/.
設定ファイル(.emacs)に以下の記述を追記.
(require 'go-autocomplete) (require 'auto-complete-config)
Emacs/シンタックスハイライト(go-mode)
goをインストールしたディレクトリのmisc/emacs配下にハイライト用のelispファイルが置いてあるのでコピーしてくる。
ちなみにgithubにもgo-mode.elはある.
% cp $GOROOT/misc/emacs/go-mode-load.el $HOME/.emacs.d/elisp/. % cp $GOROOT/misc/emacs/go-mode.el $HOME/.emacs.d/elisp/.
設定ファイル(.emacs)に以下の記述を追記.
;; go-mode (add-to-list 'load-path "go-mode-load.el" t) (require 'go-mode-load)
まとめ
- 環境設定でコード書きやすい状況にするのは重要。
- まだまだ開発しやすい環境にする設定はあるようなので調整してみる。
- gocodeを使うことでテストコードを書くこともできるのでその部分も深く触ってみる。
- revel使ってサンプルつくるところまではもっていきたい。
参考URL
インストール/設定関連
Getting Started - The Go Programming Language
How to Write Go Code - The Go Programming Language
Goプログラミング言語のチュートリアル - golang.jp
An Introduction to Programming in Go