Cara Alternatif Instal Golang di Linux

Sebenarnya cara instal golang (Go Programming Language) / go tool sudah ada situs resminya, namun disini saya akan membuat sedikit perubahan terutama path instalasinya. Saya sengaja mengubahnya agar lebih rapi, karena saya suka menginstal secara manual berbagai file tarball berisi pre-instal binary package dan selalu meletakkannya di dir /opt/ bukan langsung di /usr/local/ seperti yang tertulis pada petunjuk resmi dalam instalasi golang. Oleh karena jadi satu maka maintenance-nya jadi lebih mudah.
Berikut cara alternatif instal golang di linux debian 9 "Stretch":
Perlu diperhatikan, pada baris berikut yang dimulai dengan '%' menunjukkan suatu perintah yang harus diketik pada terminal.
1. Download latest version di: golang.org dan tempatkan di dir home

2. cek file integrity, cocokkan nilai SHA256 Checksum

% sha256sum go1.9.1.linux-amd64.tar.gz
---
07d81c6b6b4c2dcf1b5ef7c27aaebd3691cdb40548500941f92b221147c5d9c7  go1.9.1.linux-amd64.tar.gz
3. Ekstrak file tarball ke dir /opt/

% sudo tar -xvf go1.9.1.linux-amd64.tar.gz -C /opt/
4. Masuk ke dir hasil ekstrak

% cd /opt/go
5. List isi dir tersebut

/opt/go % ls
---
api  AUTHORS  bin  blog  CONTRIBUTING.md  CONTRIBUTORS doc  favicon.ico  lib  LICENSE misc  PATENTS  pkg  README.md  robots.txt  src test  VERSION
6. Masuk ke dir dimana file executable go berada

/opt/go % cd bin 
7. List isi dir tersebut

/opt/go/bin % ls
---
go  godoc  gofmt
8. Coba jalankan file executable go

/opt/go/bin % ./go
---
Go is a tool for managing Go source code.

Usage:

 go command [arguments]

The commands are:

 build       compile packages and dependencies
 clean       remove object files
 doc         show documentation for package or symbol
 env         print Go environment information
 bug         start a bug report
 fix         run go tool fix on packages
 fmt         run gofmt on package sources
 generate    generate Go files by processing source
 get         download and install packages and dependencies
 install     compile and install packages and dependencies
 list        list packages
 run         compile and run Go program
 test        test packages
 tool        run specified go tool
 version     print Go version
 vet         run go tool vet on packages

Use "go help [command]" for more information about a command.

Additional help topics:

 c           calling between Go and C
 buildmode   description of build modes
 filetype    file types
 gopath      GOPATH environment variable
 environment environment variables
 importpath  import path syntax
 packages    description of package lists
 testflag    description of testing flags
 testfunc    description of testing functions

Use "go help [topic]" for more information about that topic.
9. Symbolic link

% sudo ln -s /opt/go /usr/local/go
10. Environment variable

% mousepad ~/.xsessionrc
10.1 Tambahkan:

  export PATH=$PATH:/usr/local/go/bin
11. Restart

% systemctl reboot
12. Cek kalau sudah dikenali oleh system

% go version
---
go version go1.9.1 linux/amd64
13. Setting GOPATH (lokasi workspace) via Zsh

% nano ~/.zshrc
13.1 Tambahkan:

  export GOPATH=$HOME/work
13.2 Ketik:

% source ~/.zshrc
14. Perhatikan pada tahapan membuat symlink, disinilah perbedaan utama dengan petunjuk instalasi dari situs resmi, jadi dari pada meng-ekstrak tarball langsung ke /usr/local/, kita ekstrak ke /opt/ yang kemudian dibuatkan symlink-nya dir bin ke /usr/local/ sehingga seolah-olah diletakkan langsung di /usr/local/. Langkah selanjutnya sama dengan petunjuk instalasi dari situs resmi dengan beberapa penambahan seperlunya.

15. Tes hasil instalasi

15.1 Buat direktori src/hello di dalam workspace, kemudian buat file dengan nama hello.go di dalamnya, yang isinya:

package main

import "fmt"

func main() {
    fmt.Printf("hello, world\n")
}
15.2 Kemudian build dengan go tool:

% cd $HOME/work/src/hello
% go build
15.3 Perintah diatas akan build sebuah executable dengan nama hello di dalam direktori bersamaan dengan source code. Jalankan executable untuk melihat hasilnya:

% ./hello
---
hello, world
15.4 Jika kamu melihat pesan "hello, world" berarti instalasi Go berjalan dengan baik.

Semoga artikel ini bermanfaat positif bagi kita semua, mohon maaf bila ada yang kurang / salah kata. Feedback positif nya kita tunggu. Alhamdulillah & Wassalamu'alaikum.

Credit diberikan kepada:
1. golang.org

Keywords: linux, golang, alternatif, instal, debian 9 stretch.

Komentar

Postingan populer dari blog ini

Cara Instal Driver Printer/Scanner Epson L360 di Linux Debian 9 Stretch