Install Go Lang di OpenBSD dengan PATH Environment

· 2 min read

variabel gopat mendefinisikan akar ruang kerja Anda. Variabel ini memberi tahu Go tempat mencari kode Anda. Variabel ini menyimpan semua berkas yang d

Go atau Golang memiliki banyak variabel PATH. Variabel lingkungan Golang adalah pasangan nama/nilai yang ada di luar program tetapi dapat dirujuk kapan saja. Ada banyak variabel lingkungan yang telah ditetapkan sebelumnya dalam repositori Golang, biasanya aplikasi Golang yang diinstal dengan berkas biner.

Mencoba menjalankan variabel lingkungan Golang PATH akan mengarahkan semua biner dan pustaka Golang ke direktori tertentu yang telah Anda tentukan dalam Golang PATH. Pada setiap sistem operasi, variabel lingkungan PATH diimplementasikan secara berbeda, seperti FreeBSD menggunakan perintah csh. Pada OpenBSD, kita akan menggunakan .profile untuk mengarahkan semua hasil instalasi dari Golang.





Anda dapat mengatur variabel lingkungan Golang PATH kapan saja, namun, kami lebih suka menggunakan variabel lingkungan PATH secara permanen.

Dalam posting ini, kita akan membahas dasar-dasar seputar variabel lingkungan PATH dan beberapa variabel lingkungan Golang default dan yang paling sering digunakan. Kita juga akan mempelajari cara mengatur konfigurasi lingkungan program Golang yang diinstal pada OpenBSD 7.5.


1. Golang Default PATH Environment variables

Seperti yang kita ketahui, ada banyak variabel lingkungan yang disertakan Golang saat Anda menginstalnya dan dapat dikonfigurasi sesuai keinginan Anda. Beberapa yang paling sering digunakan adalah:

GOROOT

Ini adalah jalur tempat pustaka standar Go berada di sistem berkas lokal Anda. Biasanya Anda tidak perlu mengubahnya kecuali Anda ingin menggunakan versi Go yang lain juga. Secara default OpenBSD menempatkannya di /usr/local/go.


GOPAT

Variabel ini mendefinisikan akar ruang kerja Anda. Variabel ini memberi tahu Go tempat mencari kode Anda. Variabel ini menyimpan semua berkas yang diperlukan untuk pengembangan program. Biasanya berkas ini terdiri dari beberapa berkas yang dihasilkan saat Anda menjalankan perintah go build. Hasil dari GOPAT berasal dari go.mod dan go.sum.

Untuk melihat PATH lain dari variabel lingkungan Golang, Anda dapat menjalankan perintah di bawah ini. Hasil dari perintah di bawah ini akan menampilkan semua informasi PATH Golang.

Golang env
ns3# go env
GO111MODULE=''
GOARCH='amd64'
GOBIN=''
GOCACHE='/var/cache/.cache/go-build'
GOENV='/var/cache/.config/go/env'
GOEXE=''
GOEXPERIMENT=''
GOFLAGS=''
GOHOSTARCH='amd64'
GOHOSTOS='openbsd'
GOINSECURE=''
GOMODCACHE='/var/cache/go/pkg/mod'
GONOPROXY=''
GONOSUMDB=''
GOOS='openbsd'
GOPATH='/var/cache/go'
GOPRIVATE=''
GOPROXY='https://proxy.golang.org,direct'
GOROOT='/var/cache/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.22.3.openbsd-amd64'
GOSUMDB='sum.golang.org'
GOTMPDIR=''
GOTOOLCHAIN='auto'
GOTOOLDIR='/var/cache/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.22.3.openbsd-amd64/pkg/tool/openbsd_amd64'
GOVCS=''
GOVERSION='go1.22.3'
GCCGO='gccgo'
GOAMD64='v1'
AR='ar'
CC='clang'
CXX='clang++'
CGO_ENABLED='1'
GOMOD='/usr/local/dnsproxy/go.mod'
GOWORK=''
CGO_CFLAGS='-O2 -g'
CGO_CPPFLAGS=''
CGO_CXXFLAGS='-O2 -g'
CGO_FFLAGS='-O2 -g'
CGO_LDFLAGS='-O2 -g'
PKG_CONFIG='pkg-config'
GOGCCFLAGS='-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -Wl,--no-gc-sections -fmessage-length=0 -ffile-prefix-map=/tmp/go-build460608726=/tmp/go-build -gno-record-gcc-switches'

2. Install Golang di OpenBSD

Biasanya setiap sistem operasi Golang terdiri dari beberapa versi. Untuk mendapatkan versi terbaru Golang, Anda harus memperbarui paket OpenBSD PKG. Berikut cara memperbarui paket PKG.

Update package PKG
ns3# pkg_add -uvi
Proses pembaruan akan memakan waktu yang cukup lama, setelah selesai Anda dapat melanjutkan menginstal Golang dengan perintah pkg_add. Seperti contoh di bawah ini.

Install Golang
ns3# pkg_add go
Golang sedikit berbeda dari program lainnya, Golang tidak memiliki berkas konfigurasi utama. Setelah Anda selesai menginstal Golang, berarti bahasa GO siap digunakan di OpenBSD.


3. Setup Golang PATH Environment variables

Pada bagian ini kita akan mengonfigurasi PATH bawaan Golang. Kita akan memindahkan PATH Golang sesuai keinginan kita. Pada artikel ini, kita akan meletakkan semua file pustaka Golang di direktori /var/cache. Caranya cukup mudah, Anda tinggal mengubah beberapa skrip /root/.profile.

Silakan lihat contoh skrip yang telah kita buat di /root/.profile di bawah ini.

Script /root/.profile
# $OpenBSD: dot.profile,v 1.10 2023/11/16 16:03:51 millert Exp $
## sh/ksh initialization
PATH=/sbin:/usr/sbin:/bin:/usr/bin:/usr/X11R6/bin:/usr/local/sbin:/usr/local/bin

export PATH
: ${HOME='/root'}
: ${GOVERSION='go1.22+'}
: ${GOCACHE='/var/cache/.cache/go-build'}
: ${GOENV='/var/cache/.config/go/env'}
: ${GOMODCACHE='/var/cache/go/pkg/mod'}
: ${GOPATH='/var/cache/go'}
: ${GOROOT='/usr/local/go'}
: ${GOTOOLDIR='/usr/local/go/pkg/tool/openbsd_amd64'}
export HOME
export GOCACHE
export GOENV
export GOMODCACHE
export GOPATH
export GOROOT
export GOTOOLDIR
export GOVERSION
umask 022

case "$-" in
*i*)    # interactive shell
	if [ -x /usr/bin/tset ]; then
		eval `/usr/bin/tset -IsQ '-munknown:?vt220' $TERM`
	fi
	;;
esac
Dalam skrip di atas, kami menempatkan PATH GOCACHE, GOENV, GOMODCACHE, dan GOPATH di /var/cache.

Untuk melihat bagaimana variabel lingkungan Golang PATH berubah, kami akan menunjukkan cara menginstal aplikasi Golang yang kami unduh dari Github.

Download ddns
ns3# cd /usr/local
ns3# git clone https://github.com/pboehm/ddns.git
Untuk melihat perubahan pada lokasi PATH Golang, kita menjalankan perintah go build, seperti pada contoh di bawah ini.

Install ddns
ns3# cd ddns
ns3# go build -v ./...
Sekarang Anda melihat hasilnya di direktori /var/cache. Folder baru telah muncul yang disebut ".cache" dan "go". Jalankan perintah ls untuk melihat apakah Golang PATH telah dipindahkan ke /var/cache atau belum.

/var/cache
ns3# cd /var/cache
ns3# ls
.cache      fontconfig  go          rpki-client
Pengaturan variabel lingkungan Golang PATH dapat memengaruhi proses dan hasil proyek pengembangan dan kompilasi kita, sehingga kita dapat mengelola setiap program yang berjalan dengan Golang. Fungsi PATH ini juga dapat menyesuaikan kapasitas hard disk Anda.
Subscribe on LinkedIn

Silahkan Berkomentar, Kakak...! Bunda...!

Posting Komentar