CentOS に Golang をインストールする手順
CentOS 7 に Go をインストールするには次の手順をとる。
yum をアップデートする
まずは yum をアップデートしておく。
sudo yum update
パッケージをダウンロードする
cd ~
でホームにいく。そこに
wget https://dl.google.com/go/go1.12.7.linux-amd64.tar.gz
で最新の Go をダウンロードする。ダウンロードが終わったら解凍する。
tar -xzf go1.12.7.linux-amd64.tar.gz
これでホームに Go のパッケージが入った。おそらく go という名前のディレクトリがぽつんとできている。それを /usr/local に移す。
sudo mv go /usr/local
ホームで問題ないと言っている人もいるが Go はそもそも /usr/local の中にあることが前提でできている。ここは重要なところで、インストール後に問題があったらこの辺を疑うといいかもしれない。
export GOROOT=/usr/local/go
多くのブログで
export GOROOT=/usr/local/go
などとしているが、上で /usr/local に Go のパッケージを入れた人はする必要がない。
ユーザーディレクトリにプロジェクトディレクトリを作る
ユーザーディレクトリ( /home/yamada など)に go というディレクトリを作り、その下に bin pkg src の 3 つを作る。この名前はこれ以外のものにしてはいけない。
mkdir -p ~/go/{bin,pkg,src}
上のコマンドを入力した後、ディレクトリはこのような感じになる。
home/yamada/go/src
Go そのものの環境設定
/etc/profile.d/ に path.sh を作る。
sudo vi /etc/profile.d/path.sh
上のコマンドを入力すると編集画面になる。そうしたら :wq と入力してもとの画面に戻る。これで /etc/profile.d/ に path.sh ができた。
新しく作成した path.sh に Go の環境設定を入力する。もう一度上のコマンドを入力しよう。
sudo vi /etc/profile.d/path.sh
そして insert モードにして下のコードを入力する。
export PATH=$PATH:/usr/local/go/bin
貼りつけたら :wq で保存・終了する。
今回作ったファイルをコンピューターに認識させるために
source /etc/profile
と入力する。すると環境設定 PATH が反映される。おそらくこの時点で go というコマンドが使えるようになる。つまりここでようやく
go env
といった操作ができるようになる。
プロジェクトの環境設定
続いてプロジェクトの環境設定を行う。ユーザーディレクトリの bash_profile を開く。
vi ~/.bash_profile
そして
export GOBIN="$HOME/go/bin"
export GOPATH="$HOME/go"
と入力して :wq で保存・終了する。この編集を反映させるために
source ~/.bash_profile
とする。これでプロジェクトの環境設定が終わった。