go学习笔记(二):go语言工作区介绍

朱晋君 · · 389 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

上篇文章介绍了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指向的目录中。


有疑问加站长微信联系(非本文作者)

本文来自:51CTO博客

感谢作者:朱晋君

查看原文:go学习笔记(二):go语言工作区介绍

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

389 次点击  
加入收藏 微博
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传