Menu

Cara Install Golang di Windows, macOS, dan Linux

Cara mengunduh dan menginstal Go di Windows, macOS, dan Linux, memeriksa instalasi dengan go version, memahami GOPATH, dan mengatasi error "go: command not found".

Halaman ini dilengkapi editor yang bisa dijalankan. Edit, jalankan, dan lihat output-nya seketika.

Unduh Go dari go.dev/dl, jalankan installer untuk sistemmu, buka terminal baru, lalu jalankan go version. Hanya itu proses instalasinya di Windows dan macOS. Di Linux, kamu mengekstrak tarball dan menambahkan satu direktori ke PATH. Bagian di bawah membahas setiap sistem, lalu cara memeriksa instalasi dan error yang benar-benar sering ditemui.

Kamu tidak perlu menginstal Go untuk mencobanya. Program ini berjalan di browser-mu, dengan rilis Go yang sama dengan yang dipakai situs ini, dan melaporkan di mana ia berjalan:

Setelah Go terinstal di komputermu, program yang sama akan mencetak detail mesinmu sendiri.

File unduhan yang harus dipilih

Halaman unduhan menyediakan satu file untuk setiap sistem operasi dan arsitektur CPU:

SistemFileCatatan
Windows, kebanyakan PCgo1.24.5.windows-amd64.msiamd64 berarti Intel atau AMD 64-bit
Windows di ARMgo1.24.5.windows-arm64.msiSurface Pro X, laptop Snapdragon
macOS, Apple Silicon (M1 dan setelahnya)go1.24.5.darwin-arm64.pkgdarwin adalah macOS
macOS, Intelgo1.24.5.darwin-amd64.pkg
Linux, kebanyakan server dan PCgo1.24.5.linux-amd64.tar.gz
Linux di ARMgo1.24.5.linux-arm64.tar.gzRaspberry Pi 4 dan 5 dengan OS 64-bit, AWS Graviton

Nomor versi di contoh-contoh ini adalah 1.24.5. Ambil saja rilis stabil terbaru yang ada; langkah-langkahnya tidak berubah antarversi.

Install Go di Windows

  1. Unduh file .msi lalu jalankan.
  2. Terima pengaturan default. Go terinstal di C:\Program Files\Go dan installer menambahkan C:\Program Files\Go\bin ke PATH-mu.
  3. Tutup semua jendela Command Prompt atau PowerShell yang terbuka, lalu buka yang baru. Terminal yang terbuka saat instalasi masih memakai PATH yang lama.
  4. Periksa instalasinya:
go version
go version go1.24.5 windows/amd64

winget juga bisa dipakai, kalau kamu lebih suka package manager:

winget install GoLang.Go

Install Go di macOS

Dengan paket resmi

Unduh file .pkg untuk chip komputermu lalu buka. Paket ini menginstal Go di /usr/local/go dan menambahkan /usr/local/go/bin ke PATH-mu lewat file /etc/paths.d/go. Buka jendela Terminal baru, lalu:

go version
go version go1.24.5 darwin/arm64

Dengan Homebrew

brew install go
go version

Homebrew menaruh Go di bawah prefix miliknya sendiri (/opt/homebrew di Apple Silicon) dan membuat link go ke direktori yang sudah ada di PATH-mu. Upgrade nanti dengan brew upgrade go.

Pilih satu cara saja. Kalau kamu menginstal lewat .pkg sekaligus Homebrew, akan ada dua binary go di PATH-mu, dan yang muncul lebih dulu yang menang. which go memberi tahu mana yang dipakai shell-mu.

Install Go di Linux dan Ubuntu

Cara resmi berlaku untuk semua distribusi. Hapus dulu instalasi sebelumnya, karena mengekstrak di atas folder lama akan mencampur file dari dua versi dan merusak toolchain:

cd ~/Downloads
sudo rm -rf /usr/local/go
sudo tar -C /usr/local -xzf go1.24.5.linux-amd64.tar.gz

Lalu tambahkan Go ke PATH-mu. Tambahkan baris ini di akhir ~/.profile (bash) atau ~/.zshrc (zsh):

export PATH=$PATH:/usr/local/go/bin

Muat ke shell yang sedang aktif, lalu periksa:

source ~/.profile
go version
go version go1.24.5 linux/amd64

Paket Ubuntu: apt dan snap

Ubuntu menyediakan dua jalan pintas, masing-masing dengan kelebihan dan kekurangannya:

# Distribution package: easy, but usually several releases old
sudo apt install golang-go

# Snap: tracks current Go releases
sudo snap install go --classic

Versi dari apt lebih penting daripada kelihatannya. Module menyatakan versi Go minimum di go.mod. Mulai Go 1.21, module yang menulis go 1.23 tidak akan bisa di-build dengan toolchain yang lebih lama kecuali Go bisa mengunduh versi yang lebih baru untukmu, dan toolchain yang lebih lama dari 1.21 tetap mencoba build lalu gagal pada fitur baru pertama yang ditemuinya (lihat "Memperbarui Go" di bawah). Kalau kamu menginstal dari apt, jalankan go version dan bandingkan dengan go.dev/dl.

Memeriksa instalasi

Tiga perintah memastikan setup-mu berjalan:

go version
go env GOROOT GOPATH
which go
go version go1.24.5 linux/amd64
/usr/local/go
/home/ana/go
/usr/local/go/bin/go
  • GOROOT adalah tempat Go sendiri terinstal. Jangan pernah menaruh kodemu di sana, dan kamu seharusnya tidak perlu mengaturnya.
  • GOPATH secara default bernilai $HOME/go (%USERPROFILE%\go di Windows). Go menyimpan module yang diunduh di $GOPATH/pkg/mod dan menaruh program hasil build go install di $GOPATH/bin.
  • which go (where go di Windows) menunjukkan binary persis yang dijalankan shell-mu. Pakai perintah ini setiap kali go version melaporkan versi yang tidak kamu harapkan.

Menjalankan program pertamamu

Kodemu bisa disimpan di direktori mana pun. Buat folder, mulai sebuah module, lalu tulis file:

mkdir hello
cd hello
go mod init example.com/hello
go: creating new go.mod: module example.com/hello

Simpan ini sebagai main.go di folder tersebut:

Lalu jalankan:

go run .
Go is installed and working.

go run . mengompilasi package di direktori saat ini lalu menjalankannya. Halaman hello world menjelaskan setiap baris program ini, dan langkah go mod init dibahas di Go modules.

Menambahkan GOPATH/bin ke PATH

Tool yang diinstal dengan go install masuk ke $HOME/go/bin, yang secara default tidak ada di PATH-mu. Kalau kamu menginstal sebuah tool lalu shell bilang tidak bisa menemukannya, tambahkan direktori itu juga:

go install golang.org/x/tools/cmd/goimports@latest
export PATH=$PATH:$(go env GOPATH)/bin
goimports -h

Taruh baris export di ~/.profile atau ~/.zshrc supaya tetap berlaku di terminal baru. Di Windows, installer sudah menambahkan %USERPROFILE%\go\bin ke PATH pengguna.

Memperbarui Go

Untuk upgrade, instal rilis baru dengan cara yang sama seperti saat kamu menginstal versi lama. Di Linux, artinya ulangi langkah rm -rf /usr/local/go dan tar; jangan lewatkan langkah penghapusannya.

Sejak Go 1.21, perintah go juga bisa mengambil toolchain yang lebih baru saat dibutuhkan. Kalau go.mod sebuah module menulis go 1.24 sedangkan yang terinstal adalah Go 1.22, menjalankan go build akan mengunduh Go 1.24 ke cache module dan memakainya, selama GOTOOLCHAIN dibiarkan bernilai default auto. Go yang terinstal di komputermu tetap sama; hanya module itu yang di-build dengan rilis yang lebih baru.

Untuk menyimpan versi lama sebagai bahan pengujian, instal berdampingan:

go install golang.org/dl/go1.23.4@latest
go1.23.4 download
go1.23.4 version

Error instalasi yang umum

go: command not found atau zsh: command not found: go. Shell tidak bisa menemukan binary-nya. Di Linux, pastikan /usr/local/go/bin ada di baris export PATH di file yang benar-benar dibaca shell-mu (~/.zshrc untuk zsh, ~/.profile atau ~/.bashrc untuk bash), lalu buka terminal baru. Jalankan echo $PATH untuk melihat nilai yang dipakai shell.

'go' is not recognized as an internal or external command (Windows). Tutup lalu buka ulang terminal. Kalau masih terjadi, buka "Edit the system environment variables", klik Environment Variables, dan pastikan C:\Program Files\Go\bin ada di Path. Terminal bawaan VS Code mewarisi environment saat VS Code dibuka, jadi restart VS Code juga.

go version menampilkan versi lama setelah upgrade. Ada dua instalasi di PATH-mu. Jalankan which -a go (atau where go di Windows) lalu hapus yang tidak kamu inginkan, sering kali paket apt di /usr/bin/go yang menutupi /usr/local/go/bin/go.

go: go.mod file not found in current directory or any parent directory. Go sudah terinstal dengan benar; kamu menjalankan go build atau go run . di luar module. Jalankan go mod init example.com/yourname di folder proyek terlebih dahulu.

Compile error aneh di standard library setelah upgrade di Linux. Tarball baru diekstrak di atas folder lama. Hapus /usr/local/go sepenuhnya lalu ekstrak lagi.

Permission denied saat mengekstrak. /usr/local dimiliki oleh root, jadi perintah rm dan tar butuh sudo. Kodemu sendiri tidak pernah butuh sudo.

Setup editor

Editor apa pun bisa dipakai, tapi instal dukungan Go supaya kamu mendapat autocomplete, penanda error, dan format otomatis saat menyimpan. Di VS Code, instal ekstensi Go resmi (diterbitkan oleh tim Go di Google); ekstensi ini menawarkan untuk menginstal gopls, language server Go, saat pertama kali kamu membuka file .go. GoLand dari JetBrains adalah pilihan komersial utama. Vim dan Neovim memakai gopls lewat client LSP masing-masing.

Pertanyaan yang sering diajukan

Bagaimana cara menginstal Golang?

Unduh installer untuk sistemmu dari go.dev/dl. Di Windows jalankan file .msi, di macOS jalankan .pkg (atau brew install go), dan di Linux ekstrak tarball-nya ke /usr/local lalu tambahkan /usr/local/go/bin ke PATH. Buka terminal baru dan jalankan go version untuk memastikan.

Bagaimana cara mengatasi "go: command not found"?

Shell tidak bisa menemukan binary go di PATH-mu. Di Linux, tambahkan export PATH=$PATH:/usr/local/go/bin ke ~/.profile (atau ~/.zshrc untuk zsh), lalu buka terminal baru. Untuk installer Windows dan macOS, solusinya biasanya cukup menutup dan membuka ulang terminal, karena terminal tetap memakai PATH saat ia pertama dibuka.

Bagaimana cara menginstal Go di Ubuntu?

Pakai tarball resmi: sudo rm -rf /usr/local/go && sudo tar -C /usr/local -xzf go1.24.5.linux-amd64.tar.gz, lalu tambahkan /usr/local/go/bin ke PATH. sudo apt install golang-go juga bisa, tapi paket Ubuntu sering tertinggal beberapa rilis. sudo snap install go --classic mengikuti rilis terbaru.

Apakah saya perlu mengatur GOPATH?

Tidak. Sejak Go 1.16, mode module adalah default, jadi kodemu bisa disimpan di direktori mana pun. GOPATH secara default bernilai $HOME/go dan hanya dipakai untuk cache unduhan module dan untuk binary hasil build go install, yang disimpan di $HOME/go/bin.

Bagaimana cara mengecek versi Go yang terinstal?

Jalankan go version. Perintah ini mencetak sesuatu seperti go version go1.24.5 linux/amd64: rilisnya, lalu sistem operasi dan arsitektur CPU. go env menampilkan konfigurasi lengkapnya, termasuk GOROOT (tempat Go terinstal) dan GOPATH.

Ilustrasi bahasa pemrograman di Coddy

Belajar coding dengan Coddy

Mulai