LoginSignup
12

More than 3 years have passed since last update.

WSLで最新バージョンのGo環境構築

Last updated at Posted at 2019-08-19

tl;dr

  • Windows Subsystem for Linuxにてapt経由でGoをインストールすると 1.10 が最新としてインストールされて困った
    • (現時点でのGoの最新バージョンは1.12 (2019年8月現在))
  • Goenvを導入することで最新版をインストール

環境

  • Windows Subsystem for Linux (Ubuntu 18.04)

apt経由でGoをインストール

$ apt-get install golang

ちなみにバージョン指定する事も可能
$ apt-get install golang-1.xx
尚、1.12 を指定してみると下記メッセージが出力される

E: Unable to locate package golang-1.12
E: Couldn't find any package by glob 'golang-1.12'
E: Couldn't find any package by regex 'golang-1.12'

Goenv

Goenvについて

  • Goのバージョン管理ツール
  • プロジェクト管理でバージョンを変えたりできるので便利。
  • 他の言語のXXXenvも存在する。 ex.) Pyenv Rbenv などなど

導入手順

  • インストール  
    $ git clone https://github.com/syndbg/goenv.git ~/.goenv   
    or
    URL: https://github.com/syndbg/goenv

  • 環境変数を追加する  
    下記を .bash_profileなどに下記を追加する

~/.bash_profile
export GOENV_ROOT=$HOME/.goenv
export PATH=$GOENV_ROOT/bin:$PATH
eval "$(goenv init -)"
  • 変更を反映させる
    $ source ~/.bash_profile

Goenv経由でGoをインストールする

  • インストール可能バージョンを確認する
    $ goenv install -l
1.2.2
.
.
1.12.9
1.13beta1
  • 今回は 1.12 をインストールします。   
    $ goenv install 1.12.9

  • インストール済バージョンを確認する  
    $ goenv versions

* 1.12.9 (set by /path/to/.goenv/version)
  • Goの任意のバージョンを設定する  
    $ goenv global 1.12.9

  • バージョンの確認してみる  
    $ go version

go version go1.12.9 linux/amd64

無事に最新版になっています。

おまけ

  • Proxy環境下でのGoenv経由のGoインストール  
    $ https_proxy=http://proxy.example.com:PORT goenv install 1.12.9

  • 任意のプロジェクトのみバージョンを変更する  
    $ goenv local 1.x.x

  • goenv global したのにバージョンが変わらない!  
    $ goenv rehash

参考

Ubuntuにapt-getで最新のGolangをインストールする方法
goenvでgoをインストール 〜初心者向け〜

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
12