komeの備忘録

東大院卒外資ITエンジニアの技術ブログ

go言語をUbuntu18.04にインストールする

はじめに

golang.org

goはgoogleで誕生したプログラミング言語である。Web系のプログラミングにとにかく強いっぽい。
Googleで生み出された言語だけあり、YouTubeは実際にgoで実装されているらしい。

他にもアプリケーションや、PaaSとしてもよく使われているらしい。
例えば、コンテナオーキストレーたで有名なモダーーーンなソフトウェアであるKubernetesはgoで実装されていることでも有名である。

github.com

今回は、このgo言語をUbuntu18上で実行するための環境構築をする。

環境

OS: Ubuntu18.04 Desktop

インストール

golang.org

上記のページに従って環境を構築する。

ここから各自のOS、アーキテクチャに合ったソースをダウンロードをする。
バージョンは各自で選択するが、特にこだわりがなければStable Versionの最も新しいものにしておけば安全だと思う。
もちろんCLIの場合は、ダウンロードリンクを確認して、curlやwgetでも問題ない。

$ wget https://dl.google.com/go/go1.14.2.linux-amd64.tar.gz -P ~/

解凍する。
私個人の好みで、解凍したデータは~/srcに格納し、実行ファイルのリンクファイルをパスの通ったところに保存するようにしている。 自分でインストールしたバイナリの保存先は、~/binにしてあり、ここは既にパスが通してあるものとする。

$ tar -C ~/src -xzf ~/go1.14.2.linux-amd64.tar.gz
$ ln -s $HOME/src/go/bin/go ~/bin/go
$ ln -s $HOME/src/go/bin/gofmt ~/bin/gofmt

実行

$ go
Go is a tool for managing Go source code.

Usage:

        go <command> [arguments]

The commands are:

        bug         start a bug report
        ...

いい感じに実行できた。

ついでにHello world

下記のファイルを作成し、hello.goとして保存する。

package main

import "fmt"

func main() {
            fmt.Printf("hello, world\n")
}

ビルドして実行する。

$ go build hello.go
$ ./hello
hello, world

非常に簡単だった。
ちなみにスクリプト言語っぽく、下記のように実行することもできる。

$ go run hello.go
hello, world

一応比較するが、もちろんビルドしたバイナリの方が実行速度は速い。

$ time go run hello.go
hello, world
go run hello.go  0.22s user 0.08s system 131% cpu 0.232 total
$ time ./hello
hello, world
./hello  0.01s user 0.00s system 108% cpu 0.005 total

用途に応じて使い分けよう。

まとめ

goマスターにおれはなる!!

参考にしたサイト

The Go Programming Language

(C) komee.org