いろいろ備忘録日記

主に .NET とか Go とか Flutter とか Python絡みのメモを公開しています。

Goメモ-98 (Go 1.15 リリース と ついでにchromebook linux の go をアップデート)

概要

Go 1.15 がリリースされましたね。

blog.golang.org

リリースノートとかについては前回メモしていますので、よければご参照ください。

devlights.hatenablog.com

Chromebook の Linux コンテナ に入れている Go をアップデート

ついでなので、Chromebook の Linux コンテナに入れている Go のアップデートも一応メモメモ。

今は、1.14 が入っています。私が使っている chromebook は、ASUSのC101PAというものなのですが

これのCPUがARMになっています。なので、通常利用するamd版だと動かないって感じです。

幸い、Go本家にて arm64 版も配布されていますので、それをダウンロードして後は置くだけです。

まずはダウンロード

$ cd /tmp
$ curl -LO https://golang.org/dl/go1.15.linux-arm64.tar.gz
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100    73  100    73    0     0     84      0 --:--:-- --:--:-- --:--:--    84
100 93.1M  100 93.1M    0     0  2304k      0  0:00:41  0:00:41 --:--:-- 3396k

解凍して所定の場所に置く

私の場合は $HOME/.local の下に置いているので、そこに置くようにします。

そのまま解凍すると go って名前のディレクトリが出来上がりますが、それを go115 にリネームします。

しばらくの間は、go1.14と1.15を切り替え出来るようにしたいので、go というディレクトリ名はシンボリックリンクで使います。

$ pwd
/tmp
$ tar -zxf go1.15.linux-arm64.tar.gz
$ mv go go115
$ mv go115 $HOME/.local

シンボリックリンクを調整

後は、シンボリックリンクを調整します。現状以下のようになっています。

goコマンド自体は $HOME/.local/bin にシンボリックリンクとして配置しています。

$ cd $HOME/.local
$ ls -l bin/go
lrwxrwxrwx 1 devlights devlights 32  713 14:00 bin/go -> /home/devlights/.local/go/bin/go

んで、$HOME/.local の下はこうなっています。

$ ls -l
drwxr-xr-x 1 devlights devlights  80  713 14:00 bin
lrwxrwxrwx 1 devlights devlights  28  713 14:00 go -> /home/devlights/.local/go114
drwxr-xr-x 1 devlights devlights 244  62 04:44 go114
drwxr-xr-x 1 devlights devlights 244  812 04:16 go115
drwxr-xr-x 1 devlights devlights  18  713 13:53 lib
drwxr-xr-x 1 devlights devlights   6  713 13:53 share

なので、後は この リンク を変更したら終わりですね。

$ ln -nfs $(readlink -f go115) go
$ ls -l
drwxr-xr-x 1 devlights devlights  80  713 14:00 bin
lrwxrwxrwx 1 devlights devlights  28  813 16:54 go -> /home/devlights/.local/go115
drwxr-xr-x 1 devlights devlights 244  62 04:44 go114
drwxr-xr-x 1 devlights devlights 244  812 04:16 go115
drwxr-xr-x 1 devlights devlights  18  713 13:53 lib
drwxr-xr-x 1 devlights devlights   6  713 13:53 share

Linuxの場合は、ファイルの絶対パスを取得する際に readlink が使えるので楽ですね。以下自分用のメモですが、ご参考までに。

gist.github.com

確認してみます。

$ go version
go version go1.15 linux/arm64

オッケイですね。

参考情報

golang.org

qiita.com

eng-entrance.com

おすすめ書籍

自分が読んだGo関連の本で、いい本って感じたものです。

Go言語による並行処理

Go言語による並行処理

スターティングGo言語 (CodeZine BOOKS)

スターティングGo言語 (CodeZine BOOKS)

  • 作者:松尾 愛賀
  • 発売日: 2016/04/15
  • メディア: 単行本(ソフトカバー)

プログラミング言語Go (ADDISON-WESLEY PROFESSIONAL COMPUTING SERIES)

プログラミング言語Go (ADDISON-WESLEY PROFESSIONAL COMPUTING SERIES)


過去の記事については、以下のページからご参照下さい。

  • いろいろ備忘録日記まとめ

devlights.github.io

サンプルコードは、以下の場所で公開しています。

  • いろいろ備忘録日記サンプルソース置き場

github.com

github.com

github.com