1.ubuntuへGO言語をインストール
- 【メモ】その手の記事は沢山あるけど自分への備忘録として記録
- 【メモ】今更感はあるけど気にしない、ともかくやってみる
- ubuntuのバージョンは18.04
ouraboros@******:/etc$ cat os-release
NAME="Ubuntu"
VERSION="18.04.2 LTS (Bionic Beaver)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 18.04.2 LTS"
VERSION_ID="18.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=bionic
UBUNTU_CODENAME=bionic
- 他の方が書いていたブログから
go version
を実行すると「インストされてない、けど以下でインスト可」が表示される
ouraboros@broadview:/etc$ go version
Command 'go' not found, but can be installed with:
sudo snap install go # version 1.12.2, or
sudo apt install golang-go
sudo apt install gccgo-go
See 'snap info go' for additional versions.
-
snap info go
で情報が見れると書いてあるので実行してみる。バージョンがズラズラと表示され、今ココが表示される。親切
ouraboros@broadview:/etc$ snap info go
name: go
summary: Go programming language compiler, linker, stdlib
publisher: Michael Hudson-Doyle (mwhudson)
contact: michael.hudson@ubuntu.com
license: BSD-3-Clause
description: |
This snap provides an assembler, compiler, linker, and compiled libraries for the Go programming
language.
snap-id: Md1HBASHzP4i0bniScAjXGnOII9cEK6e
channels:
stable: 1.12.2 2019-04-15 (3584) 92MB classic
candidate: ↑
beta: ↑
edge: devel-59ea685 2019-05-04 (3704) 92MB classic
1.12/stable: 1.12.2 2019-04-15 (3584) 92MB classic
1.12/candidate: ↑
1.12/beta: ↑
1.12/edge: ↑
1.11/stable: 1.11.7 2019-04-15 (3586) 82MB classic
1.11/candidate: ↑
1.11/beta: ↑
1.11/edge: ↑
1.10/stable: 1.10.8 2019-01-24 (3133) 58MB classic
1.10/candidate: ↑
1.10/beta: ↑
1.10/edge: ↑
1.9/stable: 1.9.7 2018-06-13 (2117) 58MB classic
1.9/candidate: ↑
1.9/beta: ↑
1.9/edge: ↑
1.8/stable: 1.8.7 2018-02-07 (1407) 51MB classic
1.8/candidate: ↑
1.8/beta: ↑
1.8/edge: ↑
1.7/stable: 1.7.6 2017-06-02 (324) 48MB classic
1.7/candidate: ↑
1.7/beta: ↑
1.7/edge: ↑
1.6/stable: 1.6.4 2017-05-17 (122) 49MB classic
1.6/candidate: ↑
1.6/beta: ↑
1.6/edge: ↑
- 言われた通り
sudo snap install go
を実行するとエラーが表示される。警告内容を理解出来たら--classic
オプション付けて実行しろと表示される。参照していたブログでもそのオプション付けていたのはそういう理由なのね
******@broadview:/etc$ sudo snap install go
[sudo] password for ******:
error: This revision of snap "go" was published using classic confinement and thus may perform
arbitrary system changes outside of the security sandbox that snaps are usually confined to,
which may put your system at risk.
If you understand and want to proceed repeat the command including --classic.
-
snap info go
で表示されたバージョンstable 1.12.2
がインストールされる(ADSLはやっぱ遅い...)
******@broadview:/etc$ sudo snap install go --classic
[sudo] password for ******:
Download snap "go" (3584) from channel "stable" 17% 156kB/s 8m11s
↓ ※インストールが完了した後に表示された
go 1.12.2 from Michael Hudson-Doyle (mwhudson) installed
2.インストール結果を確認
- 参照したブログと同じコマンドを実行しインスト結果を確認
***@broadview:/etc$ go version
go version go1.12.2 linux/amd64
***@broadview:/etc$ which go
/snap/bin/go
***@broadview:/etc$ ll /snap/bin/go
lrwxrwxrwx 1 root root 13 5月 4 20:49 /snap/bin/go -> /usr/bin/snap*
3.一先ず動かしてみる
-
go run 'filename'
で実行するとコンパイル?してくれるらしい - コンパイル、ビルドその昔習った覚えがあるが忘れてしまったので検索したらビルドとコンパイルの違い@Qiita by @ricoに書かれていた。分かりやすい、ありがとうございます。
- ホームディレクトリにhello.goファイルを作成。中身はこんな感じ(ただのコピー)
- HBOのドラマシリコンバレーでリチャードが「タブだ!」力強く言っていたのでそれに習ってタブを使って書いてみた
- ホームディレクトリにhello.goファイルを作成。中身はこんな感じ(ただのコピー)
package main
import "fmt"
func main() {
fmt.Println("hi.this is small step,but will be big one for me.")
}
- んでもって
go run hello.go
を実行、以下その結果
******@broadview:~/go_playground$ go run hello.go
hi.this is small step,but will be big one for me.
- やった、出来た〜