Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Memasang Golang pada MacOS

Memasang Golang pada MacOS

PHPz
PHPzasal
2024-08-10 06:52:101070semak imbas

Installing Golang on MacOS

Panduan ini ialah perkara yang saya lakukan untuk mendapatkan persediaan Golang pada mesin Mac saya.

Andaian

Anda menggunakan yang berikut:

  • asdf
  • zshrc

Pasang Golang

Dari asdf-golang

asdf plugin add golang https://github.com/asdf-community/asdf-golang.git
# install latest golang version
asdf install golang latest

# set the glboal version for golang to latest
asdf global golang latest

# reshim 
asdf reshim golang

Tambahkan GOROOT dalam pemulaan shell anda

GOROOT ialah pembolehubah persekitaran yang mengkhususkan lokasi pemasangan Go

Tambahkan yang berikut pada ~/.zshrc

. ~/.asdf/plugins/golang/set-env.zsh

Ini akan memastikan bahawa GOROOT dan GOPATH ditetapkan setiap kali anda menjalankan terminal anda

  • GOROOT: menentukan lokasi direktori pemasangan Go (cth. pengkompil, pemaut, perpustakaan standard)
  • GOPATH: menentukan lokasi ruang kerja anda. Ruang kerja ialah hierarki direktori dengan tiga direktori: src, pkg, bin

Anda boleh melihat apa yang set-env.zsh lakukan:

$ cat ~/.asdf/plugins/golang/set-env.zsh
asdf_update_golang_env() {
  local go_bin_path
  go_bin_path="$(asdf which go 2>/dev/null)"
  if [[ -n "${go_bin_path}" ]]; then
    export GOROOT
    GOROOT="$(dirname "$(dirname "${go_bin_path:A}")")"

    export GOPATH
    GOPATH="$(dirname "${GOROOT:A}")/packages"
  fi
}

autoload -U add-zsh-hook
add-zsh-hook precmd asdf_update_golang_env

Kemas kini terminal anda yang sedang dibuka untuk menggunakan ~/.zshrc
terkini

source ~/.zshrc

Semak untuk melihat sama ada GOROOT dan GOPATH ditetapkan

> echo $GOROOT
/Users/username/.asdf/installs/golang/1.22.5/go

> echo $GOPATH
/Users/username/.asdf/installs/golang/1.22.5/packages

Atas ialah kandungan terperinci Memasang Golang pada MacOS. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn