Edited at

gvmでGolangインストール

More than 1 year has passed since last update.


はじめに

最近遊び始めたので、メモついでに簡単な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が利用できます。


  1. ログイン中のターミナルですぐに使いたいときは下記を実行してください。


    • source /home/ec2-user/.gvm/scripts/gvm



  2. 下記のエラーが出た場合は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にはbisongccが無いのでインストールします。

$ 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のインストールが完了です!