Go 1.12.5 がリリースされた

no extension

Go 1.12.5 がリリースされた。 セキュリティ・アップデートはなし。

go1.12.5 (released 2019/05/06) includes fixes to the compiler, the linker, the go command, the runtime, and the os package. See the Go 1.12.5 milestone on our issue tracker for details.
via Release History - The Go Programming Language

ちなみに Ubuntu の APT (Advanced Package Tool) で Go コンパイラをインストールすると2世代も古いのが入る(モジュール・モードが使えないしサポートからも外れていると思う)。

$ apt show golang
Package: golang
Version: 2:1.10~4ubuntu1
Priority: optional
Section: devel
Source: golang-defaults
Origin: Ubuntu
...

ちうわけでダウンロードページから go1.12.5.linux-amd64.tar.gz とかを取ってきて任意の場所に手動で展開するほうが吉である。 たとえば,こんな感じ。

$ cd /usr/local/src
$ sudo curl https://dl.google.com/go/go1.12.5.linux-amd64.tar.gz -O
$ cd ..
$ sudo unlink go # 以前の Go が入っている場合
$ sudo tar xvf src/go1.12.5.linux-amd64.tar.gz
$ sudo mv go go1.12.5
$ sudo ln -s go1.12.5 go
$ ./go/bin/go version
go version go1.12.5 linux/amd64

これで /usr/local/go/bin にパスを通してやればよい。 たとえば /etc/profile.d ディレクトリに golang-bin-path.sh とかいった名前でファイルを作って(名前は適当)

# shellcheck shell=sh

# Expand $PATH to include the directory where golang applications go.
golang_bin_path="/usr/local/go/bin"
if [ -n "${PATH##*${golang_bin_path}}" -a -n "${PATH##*${golang_bin_path}:*}" ]; then
    export PATH=$PATH:${golang_bin_path}
fi

とでも書いておけば次回ログイン時にはパスが通っている。

$ go version
go version go1.12.5 linux/amd64

環境変数については GO111MODULE 以外は設定する必要はない。 ちなみに GOPATH は既定で

$ go env | grep GOPATH
GOPATH="/home/username/go"

となっている。

参考図書

photo
プログラミング言語Go (ADDISON-WESLEY PROFESSIONAL COMPUTING SERIES)
Alan A.A. Donovan (著), Brian W. Kernighan (著), 柴田 芳樹 (翻訳)
丸善出版 2016-06-20
単行本(ソフトカバー)
4621300253 (ASIN), 9784621300251 (EAN), 4621300253 (ISBN), 9784621300251 (ISBN)
評価     

著者のひとりは(あの「バイブル」とも呼ばれる)通称 “K&R” の K のほうである。この本は Go 言語の教科書と言ってもいいだろう。

reviewed by Spiegel on 2018-10-20 (powered by PA-APIv5)