go学习笔记(二):go语言工作区介绍
上篇文章介绍了go语言开发环境的搭建,本文介绍一下go语言的工作区。在go语言的环境搭建过程中,需要了解3个环境变量:
1)GOROOT:go语言安装的根目录,上篇文章中:D:\Program Files\go
2)GOPATH:自己定义的工作空间
3)GOBIN:生成的可执行文件的路径
GOPATH是最复杂的一个环境变量。GOPATH是多个工作区的目录路径。这些路径存放go语言的源码文件、归档文件和编译后的可执行文件。要理解这个概念,就需要理解下面的3个知识:
1.源码组织方式
同java类似,go语言的安装也已代码包为单位,代码包可以有子包。在使用程序的实体之前,需要先导入程序的代码包。导入路径就是从src子目录到程序实际的存储目录。go语言的源码包一般放在GOPATH包含的某个工作区中src目录的某个子包中。
2.源码安装后的结果
安装后如果产生了归档文件,即.a文件(程序编译后生成的静态文件),会存放在pkg目录,如果产生了可执行文件,会存放在工作区的bin目录下。比如,一个目录结构如下:
src/a/b/c,执行go install src/a/b/c后,产生的归档文件为pkg/a/b/c.a。
所以在一个工作区中,src、pkg、bin三个目录是平级的。如下图:
3.go安装和构建
构建和安装代码包的时候都会执行编译、打包等操作,并且,这些操作生成的任何文件都会先被保存到某个临时的目录中。
1)构建命令: go build
如果构建库源码文件,结果文件只会存在于临时目录中。构建主要是为了检查和验证。如果构建命令源码文件,结果文件会被搬运到源码文件所在的目录中。
2)安装命令:go install
安装操作会先执行构建,然后还会进行链接操作,并且把结果文件搬运到指定目录。
如果安装的是库源码文件,结果文件会被搬运到它所在工作区的 pkg 目录下的某个子目录中。
如果安装的是命令源码文件,结果文件会被搬运到它所在工作区的 bin 目录中,或者环境变量GOBIN指向的目录中。
- 【Go学习笔记】go语言中的基本数据类型和包的介绍(一)
- Go语言学习笔记 --- 入门介绍
- Go语言学习笔记四: 运算符
- Go语言学习笔记 -- 内建函数
- 【C++】【学习笔记】【001】CPP语言与OO思想介绍
- ireport学习笔记---介绍、准备工作
- Go语言并发与并行学习笔记(一)
- Go语言学习笔记(五) [函数]
- Go语言并发与并行学习笔记(一)
- Go语言学习笔记3——控制语句
- go 学习笔记之初识 go 语言
- go 学习笔记之工作空间
- Go语言学习笔记十二: 范围(Range)
- GO: 语言并发与学习笔记
- go语言学习笔记(10) 错误处理
- go语言 新手学习笔记 go基础教程
- Go语言学习笔记(七)杀手锏 Goroutine + Channel
- Go语言学习笔记-编译时的pakcage文件目录约束
- Go语言学习笔记(五)方法
- go语言学习笔记---strings包