Go开发环境搭建(Mac)

338 阅读1分钟

安装

下载地址:golang.google.cn/dl/

image.png

通过pkg这种方式,会默认安装到 ** /usr/local/go ** 这个目录下。

image.png

配置环境变量

  1. 对于Linux和Mac用户,mkdir ~/go_path

  2. 到达/usr/local/go/bin下,后就可以查看当前Go的环境变量。

wangyaqi@superMan bin % mkdir ~/go_path

wangyaqi@superMan bin % vim ~/.bashrc

wangyaqi@superMan bin % cat ~/.bashrc

export GOROOT=/usr/local/go

export GOPATH=~/go_path

export GO111MODULE=on

export PATH=$PATH:$GOROOT/bin::$GOPATH/bin

wangyaqi@superMan bin % source ~/.bashrc

wangyaqi@superMan bin % go env

GO111MODULE="on"

GOARCH="amd64"

GOBIN=""

GOCACHE="/Users/wangyaqi/Library/Caches/go-build"

GOENV="/Users/wangyaqi/Library/Application Support/go/env"

GOEXE=""

GOEXPERIMENT=""

GOFLAGS=""

GOHOSTARCH="amd64"

GOHOSTOS="darwin"

GOINSECURE=""

GOMODCACHE="/Users/wangyaqi/go_path/pkg/mod"

GONOPROXY=""

GONOSUMDB=""

GOOS="darwin"

GOPATH="/Users/wangyaqi/go_path"

GOPRIVATE=""

GOPROXY="https://proxy.golang.org,direct"

GOROOT="/usr/local/go"

GOSUMDB="sum.golang.org"

GOTMPDIR=""

GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"

GOVCS=""

GOVERSION="go1.18.8"

GCCGO="gccgo"

GOAMD64="v1"

AR="ar"

CC="clang"

CXX="clang++"

CGO_ENABLED="1"

GOMOD="/dev/null"

GOWORK=""

CGO_CFLAGS="-g -O2"

CGO_CPPFLAGS=""

CGO_CXXFLAGS="-g -O2"

CGO_FFLAGS="-g -O2"

CGO_LDFLAGS="-g -O2"

PKG_CONFIG="pkg-config"

GOGCCFLAGS="-fPIC -arch x86_64 -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/g7/57djv7m961d5vl9vt223x3k80000gn/T/go-build1236013648=/tmp/go-build -gno-record-gcc-switches -fno-common"

环境变量的含义

  • GOROOT:是Go的安装目录,go原生的工具在该目录下
  • GOPATH:通常存放自己开发的代码或第三方依赖库
  • GO111MODULE=on: go会忽略GOPATH和vendor文件夹,只根据go.mod下载以来。从go1.16开始其值默认为on
  • GO PROXY:下载依赖库时走哪个镜像代理,可以公司内部自建镜像
  • PATH下的二进制文件可以在任意目录下直接运行
  • 在$GOPATH目录建3个子目录:src、bin、pkg

Go Module依赖包查找机制

  • 下载的第三方依赖包存放在$GOPATH/pkg/mod下
  • go install 生成的可执行文件存储在$GOPATH/bin下
  • 依赖包查找的顺序
  1. 工作目录
  2. $GOPATH/pkg/mod
  3. $GOROOT/src