Golang 环境变量
Golang 项目结构
├─Code-Go // GOPATH 目录
│ ├─bin // 存放编译后的二进制可执行文件
│ ├─pkg // 存放编译后的库文件
│ └─src // 存放源代码文件
│ └─github.com // 网站域名
│ └─toki-plus // 作者名
│ └─hello // 项目名
│ └─main.go // 代码文件
go build
go build
表示将源代码编译成可执行文件
在 hello 目录下执行:
go build
或者在其他目录执行以下命令:
go build hello
go编译器会去 GOPATH
的src目录下查找 hello
项目
编译得到的可执行文件 hello.exe
会保存在当前目录下
-o
参数表示指定编译后得到的可执行文件的名字
go build -o hi.exe
go install
go install
表示先编译源代码得到可执行文件,然后将可执行文件拷贝到 GOPATH
的 bin 目录下,并删除当前目录的可执行文件
在执行 go install
之前需要设置 go 环境:
go env -w GO111MODULE=auto
跨平台编译
指定目标操作系统的平台和处理器架构
使用了cgo的代码是不支持跨平台编译的
Windows下编译Mac平台64位可执行程序:
SET CGO_ENABLED=0 // 禁用 CGO
SET GOOS=linux // 目标平台:linux、darwin
SET GOARCH=amd64 // 目标处理器架构:amd64
go build
Mac 下编译 Linux 和 Windows 平台 64位 可执行程序:
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build
Linux 下编译 Mac 和 Windows 平台64位可执行程序:
CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build
CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build