参考资料
Go 语言 GOPATH 详解(Go 语言工作目录)
1.GOPATH
$ go env
GOARCH="amd64" # GOARCH 示意指标处理器架构
GOBIN="" # GOBIN 示意编译器和链接器的装置地位
GOEXE=""GOHOSTARCH="amd64"GOHOSTOS="linux"GOOS="linux" # GOOS 示意指标操作系统
GOPATH="/home/davy/go" # GOPATH 示意当前工作目录
GORACE=""GOROOT="/usr/local/go" # 示意 Go 开发包的装置目录
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
CC="gcc"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0"
CXX="g++"
CGO_ENABLED="1"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""CGO_CXXFLAGS="-g -O2"CGO_FFLAGS="-g -O2"CGO_LDFLAGS="-g -O2"PKG_CONFIG="pkg-config"
2.GOROOT
GOROOT
就是 go 的装置门路, 在 ~/.bash_profile
中增加上面语句:
GOROOT=/usr/local/go
export GOROOT
当然, 要执行 go 命令和 go 工具, 就要配置 go 的可执行文件的门路, 操作如下:
在 ~/.bash_profile
中配置如下:
export $PATH:$GOROOT/bin
如果是 windows 须要应用; 符号宰割两个门路, mac 和类 unix 都是用: 符号宰割
GOPATH:go install/go ge
t 和 go 的工具等会用到 GOPATH
环境变量.
GOPATH 是作为编译后二进制的寄存目的地和 import 包时的搜寻门路 (其实也是你的工作目录, 你能够在 src 下创立你本人的 go 源文件, 而后开始工作)。
GOPATH 之下次要蕴含三个目录: bin
、pkg
、src
bin 目录次要寄存可执行文件; pkg 目录寄存编译好的库文件, 次要是 *.a 文件; src 目录下次要寄存 go 的源文件
不要把 GOPATH
设置成 go 的装置门路,
能够本人在用户目录上面创立一个目录, 如 gopath
操作如下:
cd ~
mkdir gopath
在~/.bash_profile 中增加如下语句:
GOPATH=/Users/username/gopath
GOPATH 能够是一个目录列表, go get 下载的第三方库, 个别都会下载到列表的第一个目录外面
须要把 GOPATH 中的可执行目录也配置到环境变量中, 否则你自行下载的第三方 go 工具就无奈应用了, 操作如下:
在~/bash_profile 中配置,
export $PATH:$GOPATH/bin
创立一个 go 我的项目, 并且编译运行:
$ mkdir goproject
$ cd goproject
$ touch hello.go
在 hello.go 中输出:
package main
import "fmt"
func main() {fmt.Println("Hello, GO !")
}
在我的项目根目录下执行 go build 命令来构建你的我的项目, 构建后会生成 hello 文件
运行生成的文件./hello, terminal 中输入: Hello, GO !
当然你也能够间接运行命令 go run hello.go 来执行程序.
如果要上述设置失效, 能够执行命令: source ~/.bash_profile, 上述所有操作均为 mac 零碎下的操作, 如果是非 mac 零碎, 请自行变通.