Go言語の開発環境を整えたので、その時のメモです。基本的には以下の公式サイトのGetting Startedに沿って環境を構築しました。
CentOS 7とUbuntu 18.04 LTSの2つのLinuxに開発環境を構築しましたが、同じ手順で構築できました。
Goの入手
まずはGoのバイナリを入手します。今回はCLIのみのCentOSを使用しているため、wgetで取得します。2019年11月現在は1.13.4が最新バージョンのようなので、これをダウンロードしてきます。
$ wget https://dl.google.com/go/go1.13.4.linux-amd64.tar.gz/usr/local以下に展開します。公式サイトのコマンドほぼそのままですが、/usr/localはスーパーユーザーしか書き込み権限がないので、sudoをつけています。
$ sudo tar -C /usr/local -xzf go1.13.4.linux-amd64.tar.gzPathの設定
Goの実行ファイルにパスを通します。今回は自分だけgoコマンドが使えればいいので、~/.bash_profileの最後の行に環境変数の設定を追加します。
(zshを使っている場合は~/.zprofileの最後の行に追加してください。)
export PATH=$PATH:/usr/local/go/binこれで一度ログアウトして再度ログインすると、goコマンドが使えるようになります。ログアウトしたくない場合は、sourceコマンドで.bash_profileを再読み込みしてやります。
$ source ~/.bash_profilegoコマンドが使えるようになったことを確認します。下記コマンドでgoのバージョンが表示されたら無事Pathが通ってます。
$ go versiongo version go1.13.4 linux/amd64動作確認
さて、これでGo言語の開発ができるようになったので、HelloWorldを動かしてみます。hello.goというファイルを作成し、以下のコードを書きます。
package main
import "fmt"
func main() { fmt.Printf("hello, world\n")}ビルドして、エラーが出ないことを確認します。
$ go build hello.go実行します。hello, worldと表示されるのが確認できるかと思います。
$ ./hellohello, worldこれで、LinuxでGoの開発ができるようになりました。
$GOPATHの設定
CAUTION最近は
$GOPATHじゃなくてGo Modulesを使用する流れが主流なので、こちらは設定する必要はないかもしれません。
Go言語ではgo getコマンドを使用して簡単に外部ライブラリを導入することができますが、そのためにはGOPATHという環境変数を設定する必要があります。今回は以下を参考にgo getのデフォルトパスらしい$HOME/goをGOPATHとして指定します。
~/.bash_profileの末尾に下記を追記してください。
export GOPATH=$HOME/goexport PATH=$PATH:$GOPATH/bin最後に.bash_profileを再読み込みして完了です。
$ source ~/.bash_profile