golang安装
一、安装包下载
本节介绍golang
开发环境的搭建。
1.1 Linux
1.1.1 tar
下载
golang
预编译包:wget https://dl.google.com/go/go1.14.2.linux-amd64.tar.gz
;解压到
/usr/local
目录下,需要root
权限:tar -C /usr/local -xzf go1.14.2.linux-amd64.tar.gz
;将
golang
加入PATH
:export PATH=$PATH:/usr/local/go/bin
。
1.1.2 snapd
snapd
是Linux
的包管理器,目前一般16年以后发布的Linux
发行版都内置了snapd
,如果使用的发行版较老,参考snapd简介进行安装。使用snapd
安装golang
十分方便,只需要一行命令:sudo snap install go --classic
,即可完成golang
的所有配置。
1.2 MacOS
1.2.1 pkg
下载官网提供的pkg包并安装。
1.2.2 homebrew
使用brew install go
安装,如果brew访问较慢,参考homebrew安装。
二、环境变量配置
2.1 Linux
首先在命令行键入go env
,得到类似输出:
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/home/cheung/.cache/go-build"
GOENV="/home/cheung/.config/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GONOPROXY=""
GONOSUMDB=""
GOOS="linux"
GOPATH="/home/cheung/go"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/local/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
AR="ar"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD="/media/cheung/code/vuls/go.mod"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build222371123=/tmp/go-build -gno-record-gcc-switches"
找到$GOPATH
和$GOROOT
的定义,并打开对应终端的配置文件配置环境变量,具体参考终端添加环境变量。进入$GOPATH
使用tree -L 2
观察$GOPATH
的文件层级:
.
├── bin
│ ├── autobahn
│ ├── chat
│ ├── command
│ ├── dlv
│ ├── filewatch
│ ├── fillstruct
│ ├── gocode
│ ├── gocode-gomod
│ ├── go-cve-dictionary
│ ├── godef
│ ├── godoctor
│ ├── go-exploitdb
│ ├── go-find-references
│ ├── goformat
│ ├── goimports
│ ├── golint
│ ├── gomodifytags
│ ├── go-outline
│ ├── gopkgs
│ ├── goplay
│ ├── gopls
│ ├── gorename
│ ├── goreturns
│ ├── gost
│ ├── go-symbols
│ ├── gotests
│ ├── goval-dictionary
│ ├── govendor
│ ├── guru
│ ├── impl
│ ├── protoc-gen-go
│ ├── toml-test-decoder
│ ├── toml-test-encoder
│ ├── tomlv
│ ├── vuls
│ └── xgo
├── pkg
│ ├── linux_amd64
│ ├── mod
│ └── sumdb
└── src
├── github.com
├── golang.org
├── google.golang.org
├── gopkg.in
├── go_test_proj
├── go.uber.org
├── silverbolt -> /home/cheung/Silverbolt/engine/
├── sourcegraph.com
├── test_go
└── winterdrache.de
可以看到bin
目录下有三个文件夹,其中bin
文件夹用于存储go安装的可执行文件,src
文件夹存储go get xxx
下载的golang
第三方库,pkg
文件夹内容较多,mod
文件夹中存储go mod download
下载的第三方库,参考go mod。
GOROOT
就是刚才解压的go
的路径,该变量设置后ide(例如GoLand
)可以读取到本机安装的go
,并使用他进行编译。
2.2 MacOS
仿照Linux
配置环境变量。
Last updated
Was this helpful?