2014年9月19日金曜日

Golang環境を構築するときに気付いたこと

Go言語を触ってみたかったので、環境を構築しようとGetting Startedダウンロードページ
参考にしました。

最近知ったHTMLをコマンドラインからパースするpupとかコマンドラインを便利にできるpeco
触りたかったので go get で取得しようとしたところ $GOPATH が設定されていないので
取得できないとエラーが。

$GOPATH の設定は環境を構築する上で必要らしく重要な環境変数らしいです。
go get のときにエラーが出たので当たり前ですよね。

今度は $GOPATH に設定する値は何が無難なのか分からなかったので調べることに。
GOPATHとワーキングディレクトリを見ると作業ディレクトリのような扱いに感じたので
ホームディレクトリ直下にフォルダを作成。
# GOPATHのパスはGoのバージョンごとに分けたほうが良いと知り .go だけよりも
# バージョンがあると後で融通が効くと思ったので下の設定になりました。
# %USERPROFILE%\.go\{Goのバージョン}
SET GOPATH=%USERPROFILE%\.go\1.3
仕切りなおして再度 go get を実行するとコンソール上に hg の表示が。
調べてみたところ Google が公開しているライブラリは Mercurial を通して公開されているとのこと。

必要なので Mercurial もダウンロードページからインストーラをダウンロードしてインストール。
今回は Mercurial だけ欲しかったので一覧から次の項目のインストーラを利用しました。
Mercurial 3.1.1 MSI installer - x64 Windows - requires admin rights

Mercurial のダウンロードページに Inno Setup installer というはじめてみる名前が。
これも調べてみると OSS のインストーラとのことでした。
特に理由は無いですが、MSI installer を選びました。

go get で無事にpupもpecoも取得できコマンドラインから実行できることを確認しました。
# go get で取得したパッケージは %GOPATH%\bin にバイナリができるので
# PATHに下のパスを追加することで利用できるようになります。
%GOPATH%\bin
Go言語を触りたいから Mercurialを知る→インストーラのInno Setup installerを知る
環境変数の管理の方法が増えた

ただ単にGo言語を触りたいだけだったのに、調べてブログに書き起こしてみると他にも
新たなことを発見・気付くことができました。

形にすることで残るし、些細なことにも気付けるきっかけになるのだなぁと再認識しました。

ちなみにpuppecoはバイナリが公開されているのでGo環境を構築しなくてもダウンロードして
PATHを通せば利用できるようになります。