LoginSignup
65
49

More than 3 years have passed since last update.

はじめに

最近、仕事でGo触り始めたので、改めて環境構築の手順の確認と、今後Goを触りたいっていう人の参考になればなぁと思います。

ちなみに、自分の手元の環境は以下。
OS : macOS Catalina 10.15.2
→ 好奇心でzshにも切り替えてます。

環境構築方法

以下の2つをまとめていこうかな、と思います。
どちらも簡単なので、パーっと終わるかと。
あとPATH通したりの作業は必要ですが、Homebrewでインストールもできます。

  • 公式からDLしてインストール
  • goenvを使ってインストール

公式からダウンロード

インストール

インストーラに従って進めるのみ。

PATHを通す

// bash使ってる人は、.bash_profileとかに置き換えてくださいー。
% echo 'export PATH="$PATH:/usr/local/go/bin"' >> ~/.zshenv

GOPATHの確認

% go env GOPATH
/Users/hogehoge/go

GOPATHは、Goのワークスペースを指定する環境変数です。
上のディレクトリにsrcディレクトリを作成し、その中にプロジェクトを作成していきます。
{$HOME}/goがデフォルトみたいですね。

もしGOPATH変えたい人は、以下でGOPATHの変更が可能です。

% go env -w GOPATH=お好きなディレクトリ

詳しくはこちらを参照ですね。
他にもGoは、色々な環境変数が準備されていて、go envを実行すれば、他の環境変数を確認できます。
今回は環境構築ということで、無視します。

goenvを使ってインストール

goenvって??

ざっくりいうと、goのバージョン管理を行うためのツールです。
プロジェクト毎に、goのバージョン指定できるので、Aプロジェクトは1.12で、Bプロジェクトは1.13みたいな感じでバージョン指定ができます。
pyenvとかrbenvとかのgo版です。gitページにもpyenv等に倣うって書いてあります。

goenvのインストール

% git clone https://github.com/syndbg/goenv.git ~/.goenv
// brew 入ってる人はbrew installでいけます〜。

セットアップ

// bash使ってる人は,.bash_profileとかに置き換えてくださいー。
% echo 'export GOENV_ROOT="$HOME/.goenv"' >> ~/.zshenv
% echo 'export PATH="$GOENV_ROOT/bin:$PATH"' >> ~/.zshenv
% echo 'eval "$(goenv init -)"' >> ~/.zshenv
% exec $SHELL

確認

% goenv -v
goenv 2.0.0beta11

% goenv install -l
Available versions:
  1.2.2
  ... // 過去のモノからたっくさん出てきます。
  1.13.8
  1.14beta1
  1.14rc1

バージョンの設定

↓のような感じで、goenv local x.x.xを実行すると、そのプロジェクトのバージョン指定ができます。
goenv localを実行すると、.go-versionファイルが作成され、その中にgoのバージョンが書かれています。
他にもいくつかコマンドありますけど、いつか記事にできたら、と思いますー。

% goenv local 1.13.7
% cat .go-version
1.13.7
% go version
go version go1.13.7 darwin/amd64

ということで、動作確認

% cd $GOPATH
% mkdir -p src/hello
% vi hello.go

以下、公式から持ってきたソースをコピペ〜。

hello.go
package main

import "fmt"

func main() {
    fmt.Printf("hello, world\n")
}

buildします。

% go build

// buildして、helloという実行ファイルが作成されました。
% ls
hello       hello.go

では、実行します!!

% ./hello
hello, world

出ましたーーーーー!!
お馴染みのhello world!!

ということで、ざざっとgoの環境構築は完了になります。
あとは、goの基本文法とかは A Tour of Goで学ぶことができます。

65
49
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
65
49