Go环境变量
为方便开发,在开发环境往往需要设置三个环境变量:
$GOROOT
:go
的安装目录, 配置后不会再更改;$GOPATH
:go
项目在本地的开发环境的的项目根路径(以便项目编译,go build
,go install
),不同的项目在编译的时候该环境变量可以不同;$PATH
(重要):需要将go
的bin
目录添加到系统$PATH
中以便方便使用go的相关命令,配置后也不会再更改;
Go的环境变量在官方文档中也有详情的说明,请参考链接: https://golang.google.cn/doc/install/source
环境变量中的
$GOOS
和$GOARCH
是比较实用的两个变量,可以用在不同平台的交叉编译中,只需要在go build
之前设置这两个变量即可,这也是go语言的优势之一:可以编译生成跨平台运行的可执行文件。感觉比QT更高效更轻量级,虽然生成的可执行文件是大了一点,不过也在可接受的范围之内。 例如,在Linux amd64
架构下编译Windows x86
的可执行文件,可以使用如下命令:CGO_ENABLED=0 GOOS=windows GOARCH=386 go build hello.go
遗憾的是交叉编译暂不支持
cgo
方式,因此需要将环境变量$CGO_ENABLED
设置为0,这样执行之后会在当前目录生成一个hello.exe
的windows x86
架构的可执行文件。
环境变量设置
除了 $PATH
环境外,其他环境变量都是可选的。
为什么说这个步骤可选呢?因为未来的 Go
版本慢慢开始移除对 $GOPATH
/ $GOROOT
的支持。此外,在 Goland
这个IDE中集成有 Terminal
功能,直接使用这个功能中已经设置好了环境变量。