はじめに
最近遊び始めたので、メモついでに簡単なGolangの環境構築方法をつらつら書いていこうと思います。
環境はAWSのEC2(Amazon Linux)です。
他のLinux系OSやMacでも同様の処理でインストールまで出来るはずです。
Golangとは
GolangはGoogleが開発しているコンパイル型のプログラム言語で、
シンプルな記法が特徴で並列処理も簡単に実装できます。
gvm
gvmはGolangのバージョン管理ツールです。
$GOPATHや$GOROOTも最初から設定してくれるので大変便利です。
https://github.com/moovweb/gvm
gvmのインストール
ターミナルで下記を実行
$ bash < <(curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer)
これだけです。
.bashrcに自動読み込みの設定も追記されているので、今後はターミナルを立ち上げるだけでgvmが利用できます。
- ログイン中のターミナルですぐに使いたいときは下記を実行してください。
source /home/ec2-user/.gvm/scripts/gvm- 下記のエラーが出た場合は
gitをインストールしましょう。 ERROR: Could not find git
gvmの確認
正常に動いているか確認しましょう。
$ gvm version
Could not find bison
linux: apt-get install bison
Could not find gcc
linux: apt-get install gcc
と思ったら怒られました。
Amazon Linuxにはbisonとgccが無いのでインストールします。
$ sudo yum install -y bison gcc
そして再確認
$ gvm version
Go Version Manager v1.0.22 installed at /home/ec2-user/.gvm
問題なさそうです。
これでgvmのインストールが完了しました。
Golang
ではGolangをインストールしていきましょう。
gvm listall
まずインストール可能なGolangの バージョンを探します。
$ gvm listall
...
go1.7rc4
go1.7rc5
go1.7rc6
go1.8
go1.8.1
go1.8.2
go1.8.3
...
今回は最新のgo1.8.3をインストールしようと思います。
gvm install
$ gvm install go1.8.3 -B
オプションの-BはBinaryを持ってくるだけですが、
-Bなしでのインストールを行うとGolangのソース持ってきてローカルでコンパイルします。
ただしgo1.5以上のコンパイルにはgo1.4が必要となることがあります。
(※go1.8.2のインストールでは必要なかったのでこの仕様は無くなったのかもしれません。)
gvm use
ではGoを使えるようにしましょう。
$ gvm use go1.8.3 --default
オプションの--defaultを指定しておくことでターミナルに再ログインした後でも、そのバージョンを利用できます。
指定しない場合はログイン中のみ利用できます。
それでは確認です。
$ go version
go version go1.8.3 linux/amd64
さらに$GOPATH、$GOROOTも見てみましょう。
$ echo $GOPATH
/home/ec2-user/.gvm/pkgsets/go1.8.3/global
$ echo $GOROOT
/home/ec2-user/.gvm/gos/go1.8.3
※もし何も表示されない場合は再ログイン、または下記を実行してください。
source /home/ec2-user/.gvm/scripts/gvm
というわけでGolang1.8.3のインストールが完了です!