5
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Ubuntu Linux 20.04 LTSにGoをインストールする

Posted at

はじめに

Goをインストールするにあたって、寄り道しながら、どのようにインストールするべきか、いろいろな方法を見てみました。

公式サイトを見てみる

直接圧縮ファイルをダウンロードするように解説されています。これだと面倒なので、パッケージ管理ツールを使ってインストールする方法がないか調べてみます。

GitHubを見てみる

GitHubだとパッケージ管理ツールを使ったインストール方法がREADMEに書いてあることが多いですがなかったです。
https://github.com/golang/go

GitHubのWikiを見てみる

もう少し粘ってみましょう。
WikiにUbuntuのページがありました。

Using PPAとして、公式ではないですが、aptを使ったインストール方法が書かれていました。
PPA(Personal Package Archive)とは、非公式のレポジトリのことです。

本来であれば、公式のインストール方法に従うべきですが、Wikiに従って、試しにこちらから入れてみます。

提供元のサイトを見てみると、

Latest updates
golang-1.20 5 weeks ago
Failed to build: i386

Goの1.20.5のbuildが失敗している記述がありました。
とりあえず入れてみましょう。

$ sudo add-apt-repository ppa:longsleep/golang-backports
$ sudo apt update
$ sudo apt install golang-go
$ go version
go version go1.20.4 linux/amd64

1.20.4がインストールされています。
公式で提供されている最新バージョンは1.20.5なので
今、Go公式から入手できるバージョンよりは低いようです。buildに失敗した履歴があるのに放置しているのはなぜなのでしょう?

今回は、最新版を入れたかったので、適当にコマンドを実行して入れると、意図してないバージョンが入ってしまう危険性があることがわかりました。

消しておきます。

$ sudo apt remove golang-go
$ sudo apt autoremove

Ubuntuの公式パッケージを調べてみる

apt searchコマンドを使用して、公式パッケージでgoをサポートしているものがないか、調べてみます。

$ apt search golang-go
...
golang-1.20-go/jammy 1.20.4-1longsleep1+focal amd64
  Go programming language compiler, linker, compiled stdlib
...

ありましたが、1.20.4でした。
公式レポジトリでサポートされているコマンドがあったのでPPAの使用を促しているGoの公式Wikiは情報が古いということですね。

wgetコマンドを使って入れる

Go公式のダウンロードページから右クリックでリンクを取得します。

$ wget https://go.dev/dl/go1.20.5.linux-amd64.tar.gz
$ sudo tar -C /usr/local -xzf go1.20.5.linux-amd64.tar.gz 
$ rm -rf go1.20.5.linux-amd64.tar.gz 
$ export PATH=$PATH:/usr/local/go/bin
$ go version
go version go1.20.5 linux/amd64

無事に最新版のGoがインストールできました。

まとめ

Ubuntuの公式レポジトリでパッケージが用意されていても、必ずしも最新版ではない、ということが知れてよかったです。
パスの設定の手間があるので、マイナーバージョンの差異くらいならaptでインストールするほうが管理が楽かもしれないですね。

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?