isdkz 发表于 2022-4-1 19:04:20

一、搭建Go语言开发环境

本帖最后由 isdkz 于 2022-4-1 19:18 编辑

Go语言编译器下载地址


[*]Go官网下载地址:https://golang.org/dl/

[*]Go官方镜像站:https://golang.google.cn/dl/


Go语言环境变量


[*]GOPATH:模块存放路径

[*]GOROOT:Go解释器安装路迳

[*]GOENV:Go环境变量配置文件存在路径

[*]GOCACHE:Go编译中间文件缓存路径

[*]GO111MODULE:Go包管理模式切换(on: GOMODULE、auto: 存在 go.mod 为 GOMODULE,不存在为 GOPATH、off: GOPATH)

[*]GOMODCACHE:GO模块安装缓存路径

[*]GOPROXY:Go代理


Go常用命令

go env 查看 Go 环境变量

go env -w GOPROXY=https://goproxy.cn,direct 修改GOPROXY

go version 查看 Go 语言版本

go get ... 安装扩展库

go build ... 将源代码编译成可执行文件,加 -o 参数可以指定编译后的可执行文件的名字

go run ... 先编译再执行

go install ... 编译源代码得到可执行文件,然后将可执行文件移动到 GOPATH 的 bin 目录下

go mod:

go mod download 下载依赖的module到本地cache(默认为 $GOPATH/pkg/mod)

go mod edit 编辑 go.mod 文件

go mod graph 打印模块依赖图

go mod init 初始化当前文件夹,创建 go.mod 文件,将当前项目变为一个 Go Module

go mod tidy 自动更新当前 module 的依赖信息(增加缺少的module,删除无用的module)

go mod vendor将依赖复制到vendor下

go mod verify校验依赖

go mod why解释为什么需要依赖

Windows 编译 Linux 可执行文件
cmd:
SET CGO_ENABLED=0// 禁用CGO
SET GOOS=linux// 目标平台是linux
SET GOARCH=amd64// 目标处理器架构是amd64

powershell:
$ENV:CGO_ENABLED=0
$ENV:GOOS="linux"
$ENV:GOARCH="amd64"

设置好环境变量后执行 go build

Windows 编译 Mac 可执行文件
cmd:
SET CGO_ENABLED=0
SET GOOS=darwin
SET GOARCH=amd64
go build

powershell:
$ENV:CGO_ENABLED=0
$ENV:GOOS="darwin"
$ENV:GOARCH="amd64"
go build

Linux(Mac)编译 Windows 可执行文件
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build

GOPROXY 代理
https://goproxy.io
https://goproxy.cn
https://mirrors.aliyun.com/goproxy/

gopath 的目录结构

bin目录:包含了可执行程序,注意是可执行的,不需要解释执行。

pkg目录:包含了使用的包或者说库。

src目录:里面包含了go的代码源文件,其中仍按包的不同进行组织。


hornwong 发表于 2022-4-1 20:13:21

感谢分享!

amazed 发表于 2022-4-2 00:50:42

66666666666666666

小伤口 发表于 2022-4-2 13:56:57

眼一个

isdkz 发表于 2022-4-2 14:31:28

小伤口 发表于 2022-4-2 13:56
眼一个

感谢大佬捧场{:5_92:}

Passepartout 发表于 2022-4-2 14:36:01

{:5_108:}

Passepartout 发表于 2022-4-2 14:36:32

{:10_256:}

isdkz 发表于 2022-4-2 14:36:47

Passepartout 发表于 2022-4-2 14:36


{:5_108:}

1050293757 发表于 2022-4-2 15:40:41

{:5_109:}

tjweiyanmin 发表于 2022-4-2 21:46:08

{:5_109:}

amazed 发表于 2022-4-3 00:53:43

66666666666666

超级无敌磊果果 发表于 2022-4-3 15:09:47

{:7_112:}

1molHF 发表于 2022-4-3 15:39:21

感谢分享!

小伤口 发表于 2022-4-3 18:35:39

isdkz 发表于 2022-4-2 14:31
感谢大佬捧场

{:10_254:}你才是

xhyyhx 发表于 2022-4-4 09:22:42

{:10_254:}

andy大宝 发表于 2022-4-4 10:14:37

{:10_256:}

andy大宝 发表于 2022-4-4 10:15:38

好啊{:10_275:}

pybaolilong 发表于 2022-4-4 13:04:17

{:10_266:}

pytao 发表于 2022-4-4 14:34:12

666

超级无敌磊果果 发表于 2022-4-5 16:01:50

{:7_146:}
页: [1] 2 3
查看完整版本: 一、搭建Go语言开发环境