0%

Golang 环境搭建

QQ群:397745473

Golang 环境搭建

1
2
3
4
5
golang 环境搭建
go版本: https://go.dev/dl/

# 一键搭建go1.15.15环境:
wget https://go.dev/dl/go1.15.15.linux-amd64.tar.gz;tar -zxf go1.15.15.linux-amd64.tar.gz -C /usr/local/;echo 'export GOROOT=/usr/local/go' >> /etc/profile;echo 'export GOPATH=$HOME/go'>> /etc/profile;echo 'export PATH=$PATH:$GOROOT/bin:$GOPATH/bin' >> /etc/profile;source /etc/profile
1
参考: https://segmentfault.com/a/1190000040781042

注:本文为Linux下搭建Golang

安装Go

Go的安装相比其他语言环境非常简单,直接下载安装包,解压安装即可。

1、下载安装包(官方地址:https://golang.org/dl/ 国内已被墙了),直接去对应的Go语言中文网下载即可,稍等一下下就下载好了。

1
2
3
wget https://studygolang.com/dl/golang/go1.17.1.linux-amd64.tar.gz

没安装wget? [安装wget:yum install wget] OR [浏览器下载下来,用ftp上传上去]

2、解压到应用程序目录

1
2
3
$ tar -zxvf go1.17.1.linux-amd64.tar.gz -C /usr/local/

-C 是指定到目标目录, 一般情况我们用户安装的程序都指定到/usr/local/下

3、恭喜你安装完了,不信看看版本

1
2
3
$ /usr/local/go/bin/go version

go version go1.17.1 linux/amd64

环境变量配置

都安装完了,还需要配置环境变量?需要,需要,需要
我们先来看下安装完Go的当前环境变量是啥

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
** 查看命令 **
$ /usr/local/go/bin/go env

GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/root/.cache/go-build"
GOENV="/root/.config/go/env"
GOEXE=""
GOEXPERIMENT=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOINSECURE=""
GOMODCACHE="/root/go/pkg/mod"
GONOPROXY=""
GONOSUMDB=""
GOOS="linux"
GOPATH="/root/go" ** go项目开发源码所在目录 **
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/local/go" ** go源程序的安装目录 **
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
GOVCS=""
GOVERSION="go1.17.1"
GCCGO="gccgo"
AR="ar"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD="/dev/null"
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-build2477519910=/tmp/go-build -gno-record-gcc-switches"

要搞清楚每个字段什么意思,可以参考官方解释。建议在实际项目用到或遇到问题时再查看对应字段熟悉深究其中含义。当前只需要明白GOROOT,GOPATH即可。

1
2
** 查看官方字段解释 **
$ /usr/local/go/bin/go help environment

到此我们说一说,为啥需要配置环境变量

下来我们先设置几个Linux的环境变量,这里注意和Go的env没啥关系,主要原因是我不想每次都使用 [$ /usr/local/go/bin/go version] 这么长的命令了,我就想直接 [go verison]就完事了

1
2
3
4
5
6
7
** 写入系统加载配置 **
$ echo 'export GOROOT=/usr/local/go' >> /etc/profile
$ echo 'export GOPATH=$HOME/go' >> /etc/profile
$ echo 'export PATH=$PATH:$GOROOT/bin:$GOPATH/bin' >> /etc/profile

** 加载刚写入的配置 **
$ source /etc/profile

好了,这下爽了,可以直接只用go命令了,我们继续。。。

前期说明:Go环境变量修改说明(这个记住哦 -w 理解成write )

1
2
3
4
5
6
go env -w key=value   ** key如GOPATH、GOROOT ... **

官方解释(学英语的重要性🐶):
The -w flag requires one or more arguments of the
form NAME=VALUE and changes the default settings
of the named environment variables to the given values.

1、设置GOPATH路径(GOPATH路径是源代码所在目录)

1
2
3
$ go env -w GOPATH=源代码所在目录 (我们这里默认每个用户目录下的go目录)

$ /usr/local/go/bin/go help gopath

2、设置GoMOD并配置代理(为啥,默认的有墙), 中国区的Golang开发者提供的代理服务

1
2
$ go env -w GO111MODULE=on
$ go env -w GOPROXY=https://goproxy.cn,direct

【HelloWorld】-第一个Go程序

1
2
3
4
5
** -p为父目录不存在时自动创建父目录,~为当前用户家目录 **
$ mkdir -p ~/go/src
$ cd ~/go/src
** 我们随便起个文件hello,注意后缀必须是.go **
$ vim hello.go

大家想一想代码一定要放在放在~家目录下吗?【是的,必须,因为我们GOPATH已经指定项目所在位置了】
我们先写一个Hello Go!

1
2
3
4
5
6
7
package main

import "fmt"

func main() {
fmt.Println("Hello Go!")
}

运行一下我们刚写的hello.go

1
2
3
4
5
** 当然你也可以先 [go build hello.go] 然后 [./hello]运行 **
go run hello.go

** 看到下面的,恭喜你第一个go程序运行成功了 **
Hello Go!

至此:Go环境配置完毕。

如有遗漏或错误可直接扔砖指出🤝

QQ群:397745473

欢迎关注我的其它发布渠道