MacにGo開発環境を設定してみる

ふと最近「次世代の開発言語に全く触ってないなぁ」と思ったので、ひとまずGo言語を触ってみることにしました。
※次世代の開発言語はGo、Kotlin、Rust、Erlangあたりかなと個人的に思ってます・・・

VSCodeの拡張機能の手順でインストール

エディタはVSCodeを利用します。
Mac環境 + VSCodeだと以下の記事が構築の参考になりました。
https://takamoto.biz/golang/1/

Goのインストール

Go言語公式ページからパッケージをダウンロードしてインストールします
https://golang.org/

Mac版のパッケージをダウンロードし、インストールします

インストール終了後、ターミナルからコマンドを入力することでバージョンとインストール先が確認できます。

$ go version
go version go1.16.6 darwin/amd64
$ which go
/usr/local/bin/go

環境変数の設定

環境変数を設定します。参考サイトに習って以下のコマンドターミナルから実行しました

$ export GOPATH=$HOME/go
$ export PATH=$PATH:$GOPATH/bin

入力後に以下のコマンドでパスが設定されたか確認できます

$ export -p

ディレクトリの確認

GOPATHに設定したディレクトリ配下に「src」ディレクトリを作成します。
最終的に以下のようなディレクトリ構成になってればOK

$ ls -ltr
total 0
drwxr-xr-x   4 user  staff  128  8 14 15:51 pkg
drwxr-xr-x  12 user  staff  384  8 14 15:52 bin
drwxr-xr-x   2 user  staff   64  8 15 17:17 src

VSCodeの設定

次にVSCodeの設定を行います

拡張機能のインストール

以下の拡張機能をインストールします

その後、コマンドパレット(表示 > コマンドパレット or Shift + Command + P)を開き「install/update Tools」を入力。出てきたツールにすべてチェックを入れ、OKをクリックします

自分の場合、以下のようなエラーが表示されインストールが行なえませんでした。

別途setting.jsonに「go.gopath」の設定を組み込むことでインストールが行えました。

ソースファイルの作成

環境設定時に作成した$GOPATH配下のsrcディレクトリ配下に以下のようなファイルを作成しました。
ファイル名は「hello.go」としました

package main

import "fmt"

func main() {
	fmt.Println("Hello, 世界")
}

go mod コマンドの実行

上記ソースをVSCodeから実行するとエラーが表示されます。

go.modファイルが見つからないというエラーが発生したため、以下のコマンドを実行しました。

% go mod init hello

VSCodeのターミナルから実行しました

プログラム実行

以上の設定でやっとVSCodeからgo言語が実行できるようになります。
メニューの「実行 > デバッグなしで実行」でプログラムが実行されます。

ブレークポイントを設定すれば、きちんとプログラムも停止します
初回実行時は許可が求められるため、実行を許可します。

以上で Mac + VSCodeを利用したgo開発環境の設定は完了です。

以上

色々検索してみると情報が古かったり、断片化していたりして結局1日がかりでの環境構築になってしまいました。
参考にさせていただいたブログ通りに作業することで、やっと動くようになりました。
もう少し簡単に環境設定が行えるようになるといいですね・・・