個人的な事情により Golang を触ってみようと思いましたので、その備忘録として残しておきます.
とりあえず、Mac や Linux/Unix ではなく、Windows でやってみようと思います.12
これから「Windows + Golang」やってみたいなぁ、と思っている方々の一助になれば幸い.
何を参考に進めるか
とりあえずこれでいきます。公式強し!
http://golang-jp.org/doc/code.html
前提環境
- Golang (go version go1.5.2 windows/amd64) インストール済み (無い場合はここからインストールしましょう.
- Go は C:\Go にインストールされている. 以下、C:\Go 以下のディレクトリ構成 (DIR C:\Go の表示結果) です. (色々伏せてますが)
ドライブ C のボリューム ラベルは hogehoge です
ボリューム シリアル番号は hoge-hoge です
C:\Go のディレクトリ
2015/mm/dd hh:ii .
2015/mm/dd hh:ii ..
2015/mm/dd hh:ii api
2015/mm/dd hh:ii 21,146 AUTHORS
2015/mm/dd hh:ii bin
2015/mm/dd hh:ii blog
2015/mm/dd hh:ii 1,107 CONTRIBUTING.md
2015/mm/dd hh:ii 28,953 CONTRIBUTORS
2015/mm/dd hh:ii doc
2015/mm/dd hh:ii 1,150 favicon.ico
2015/mm/dd hh:ii lib
2015/mm/dd hh:ii 1,479 LICENSE
2015/mm/dd hh:ii misc
2015/mm/dd hh:ii 1,303 PATENTS
2015/mm/dd hh:ii pkg
2015/mm/dd hh:ii 1,519 README.md
2015/mm/dd hh:ii 26 robots.txt
2015/mm/dd hh:ii src
2015/mm/dd hh:ii test
2015/mm/dd hh:ii 7 VERSION
9 個のファイル 56,690 バイト
11 個のディレクトリ xxx,xxx,xxx,xxx,xxx バイトの空き領域
Windows の環境変数を変更する
GOROOT は C:\Go\
GOPATH は C:\go-workspace
とします.
go-workspace に関しては好きな名前で好きな場所に作って頂いて構いません.
Go で開発するときのフォルダ構成
参考ページのパッケージパスにあたります.
いつの日にか公開することを見越してコードを構成することはよい行いです。
THAT'S RIGHTTTT!
公開しなくたって、ライブラリをインポートする際に他と名前空間が被ってしまうわけにはいかないので、できるだけ公開できるような形で構成していきましょう!
というわけで、ここではひとまず Github の形式を採用します.
まずフォルダを掘ります.
{user_name} のところはお好きにどうぞ.
mkdir "%GOPATH%\src\github.com\{user_name}"
次に、パッケージフォルダ (パッケージディレクトリ) を作ります.
これはユーザ名の下に来るパッケージ名となります.
これも好きな名前で大丈夫です.
mkdir "%GOPATH%\src\github.com\{user_name}\{package_name}"
更に今作ったフォルダの中にさっそく Go でプログラムを書いてみます.
ファイル名も何でもいいですが、説明するためにここでは hello.go
とします.
package main
import "fmt"
func main() {
fmt.Printf("Hello, world.\n")
}
さて、現在のフォルダをまとめるとこんな感じになります.
C:\
└─go-workspace
├─bin
├─pkg
└─src
└─github.com
└─{user_name}
└─{package_name}
└─hello.go
それでは、実際に hello.go をコンパイルしてみましょう.
cd %GOPATH%\src
go install github.com\{user_name}\{package_name}
または
cd %GOPATH%\src\github.com\{user_name}\{package_name}
go install
そうすると、コマンドプロンプトには何も表示されずに終了します.
何も表示されないので不安かもしれませんが、これが成功の合図です.
ここで何か出力されてしまった場合はエラーですので、グーグル先生に相談してみましょう.
ちなみに私は
go install: no install location for .go files listed on command line (GOBIN not set)
と出てきて焦ったのですが、go install コマンドに go ファイルのファイルパスを渡してしまい、怒られてしまったのでした….
go install github.com\t_shirone\test\hogehoge.go
みたいな.
正しくは go install github.com\t_shirone\test
で、Go のファイル名は含めません.
go install のしていることを考えれば当たり前なのですが(笑
さて、go install が終わると C:\go-workspace\bin
にはパッケージ名で実行ファイルが作られています.
%GOPATH%\bin\{package_name}.exe
これで、先程 go install したものを実行できるはずです.
一旦ここまで.
それでは良きエンジニアライフを(^w^)ノシ