查看当前系统版本111
[root@wzx-linux ~]# uname -r
3.10.0-1160.80.1.el7.x86_64
[root@wzx-linux ~]# cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)
[root@wzx-linux ~]#
下载Go源码包
[root@wzx-linux ~]# cd /opt/
[root@wzx-linux opt]# wget https://dl.google.com/go/go1.11.4.linux-amd64.tar.gz
解压源码包
[root@wzx-linux opt]# tar -zxvf go1.11.4.linux-amd64.tar.gz
配置go的工作空间(配置GOPATH),以及go的环境变量
4.1注:
go的代码必须在GOPATH中,也就是一个工作目录,目录包含三个子目录:
$GOPATH
src 存放go源代码的目录,存放golang项目的目录,所有项目都放到gopath的src目录下
bin 在go install后生成的可执行文件的目录
pkg 编译后生成的,源码文件,如.a
4.2
创建/opt/gocode/{src,bin,pkg},用于设置GOPATH为/opt/godocer
[root@wzx-linux opt]# mkdir -p /opt/gocode/{src,bin,pkg}
设置GOPATH环境变量
修改/etc/profile系统环境变量文件,写入GOPATH信息以及go sdk路径
[root@wzx-linux opt]# vim /etc/profile
export GOROOT=/opt/go #Golang源代码目录,安装目录
export GOPATH=/opt/gocode #Golang项目代码目录
export PATH=$GOROOT/bin:$PATH #Linux环境变量
export GOBIN=$GOPATH/bin #go install后生成的可执行命令存放路径
生效环境变量
[root@wzx-linux opt]# source /etc/profile
查看go环境是否生效
6.1看go环境变量路径
[root@wzx-linux opt]# which go
/opt/go/bin/go
6.2看go语言环境信息
[root@wzx-linux opt]# go env
GOARCH="amd64"
GOBIN="/opt/gocode/bin"
GOCACHE="/root/.cache/go-build"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/opt/gocode"
GOPROXY=""
GORACE=""
GOROOT="/opt/go"
GOTMPDIR=""
GOTOOLDIR="/opt/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD=""
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-build327941593=/tmp/go-build -gno-record-gcc-switches"
6.3查看go版本,查看是否安装成功
[root@wzx-linux opt]# go version
go version go1.11.4 linux/amd64
二、运行第一个go程序
进入GOPATH工作目录
1.1进入src代码目录
[root@wzx-linux opt]# cd /opt/gocode/src/
1.2新建一个go代码"包",hellogo
[root@wzx-linux src]# mkdir hellogo
1.3切换go包的目录,hellogo目录
[root@wzx-linux src]# cd hellogo/
2.编辑main.go写入如下代码
[root@wzx-linux hellogo]# vim main.go
package main
import "fmt"
func main() {
fmt.Println("Hello,welcome golang world")
}
3.运行go代码文件
3.1 go run直接编译+运行go代码文件
[root@wzx-linux hellogo]# go run main.go
Hello,welcome golang world
3.2 go fmt格式化go代码文件,统一代码风格
[root@wzx-linux hellogo]# go fmt main.go
main.go
3.3 go build 编译一个二进制可执行程序,用于编译指定的源码文件或代码包以及它们的依赖包
[root@wzx-linux hellogo]# go build main.go
[root@wzx-linux hellogo]# ls
main main.go
3.4 执行二进制命令,这个命令可以拖动到其他linux机器,直接使用
[root@wzx-linux hellogo]# ./main
Hello,welcome golang world
3.5 go install编译一个二进制可执行程序,放在GOBIN目录下,也就是在$GOPATH/bin目录下
[root@wzx-linux hellogo]# go install main.go
[root@wzx-linux hellogo]# ls ../../bin/
main