LoginSignup
1
2

More than 3 years have passed since last update.

fish shell + anyenvでのGo開発環境構築

Last updated at Posted at 2020-06-23

fish shell + anyenvというパターンでのGoの環境構築の記事がなかったので、備忘録としてまとめます。

実行バージョン
- fish 3.0.2
- anyenv 1.1.1

anyenvでのgoenvのインストールと設定

まずanyenvでGoのバージョン管理システムのgoenvをインストールします。

$ anyenv instal goenv

そして、goenv用の環境変数やaliasの設定をfish shellの設定ファイル~/.config/fish/config.fishに追記します。この部分がzshやbashとは違うので注意です。

set -x GOENV_ROOT "$HOME/.anyenv/envs/goenv"
set -x PATH $PATH "$GOENV_ROOT/bin"

set -gx PATH "$GOENV_ROOT/shims" $PATH
set -gx GOENV_SHELL fish
source "$GOENV_ROOT/libexec/../completions/goenv.fish"
command goenv rehash 2>/dev/null
function goenv
  set command $argv[1]
  set -e argv[1]

  switch "$command"
  case rehash shell
    source (goenv "sh-$command" $argv|psub)
  case '*'
    command goenv "$command" $argv
  end
end

これで準備は出来たのでfish shellを再起動して、goの指定バージョンをインストールしましょう。

# インストール可能なバージョンを取得
$ goenv install --list

# 指定バージョンのインストール
$ goenv install 1.14.3

# デフォルト利用バージョンを指定
$ goenv global 1.14.3

一応go envで環境変数を出力して各種設定が正しく出来ていることを確認しましょう。

$ go env

無事出力されれば完了です。:tada:

VSCodeでの設定

VSCodeでのGoを開発する場合は以下エクステンションをインストールします。

Go with Visual Studio Code

anyenv利用の場合は環境変数が通常と異なり、このままでは動作しないのでVSCodeのsetting.jsonに以下を追記します。

go.gopathgo env | grep GOPATHの値、
go.gorootgo env | grep GOPATHの値です。

"go.gopath": "/Users/<ユーザー名>/go/<Goバージョン名>",
"go.goroot": "/Users/<ユーザー名>/.anyenv/envs/goenv/versions/<Goバージョン名>"

最後go関連の各種ツールをインストールします。
補完やデバッグ関連に必要です。

command + shift + pでコントロールパネルを開き、Go: Install/Update toolsを選択します。
ダイアログが開くので全てチェックを入れてOKでインストールが始まります。

スクリーンショット 2020-06-02 21.15.23.png

VSCodeでのGo開発環境構築も完了です。:tada:

参考

1
2
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
1
2