2020-07-20

作者: 天使的靠翅膀 | 来源:发表于2020-07-26 12:38 被阅读0次

go 语言中的环境(GOPATH和GOROOT)

对于go语言的新手,理解go语言中的两个环境变量GOROOT和GOPATH对于理解go语言的编译运行和包组织管理机制非常重要,所以今天讲解一下这两个go语言的环境变量。

1.GOROOT

作用:go官方SDK和工具的安装路径,在下载

配置:在go env命令出现之前,需要在操作系统启动配置文件中~/.bash_profile或~/.bashrc下添加

GOROOT=/home/ubuntu/sdk/ 

export GOROOT

source ~/.bah_profile ,如果是配置的~/.bashrc就source ~/.bashrc重新加载环境

go env 工具出现之后,通过go程序的路径推断出来

which go 查看go的路径如下图:

go程序执行路径

推断出GOROOT:home/ubuntu/sdk/go

GOROOT下的目录结构:

GOROOT路径结构

其中主要理解pkg、src和bin三个目录的作用

bin:可执行程序的存放路径,例如go和gofmt 官方工具

pkg:go官方包编译后的静态库文件存放路径,go程序引用的官方包就是在这里查找并直接链接进程序中,而不是通过查找引用的官方包源码编译进程序,这也是为什么go的程序编译快的一个原因,省略了对官方包的编译过程

src:go官方包的源码路径

2.GOPATH

作用:go的自己包和第三包的管理路径

配置:同GOPATH一样,在go env出现之前要手动在操作系统配置文件中~/.bash_profile或~/.bashrc按如下配置

GOROOT=/home/ubuntu/go 

export GOROOT

source ~/.bah_profile ,如果是配置的~/.bashrc就source ~/.bashrc重新加载环境

go env 工具出现之后默认是~/go

GOPATH下的目录结构如下:

GOPATH的目录结构

bin:执行go install 生成的可执行程序存放的位置

src:在没使用go mod管理包时,使用go get 获取的第三方包源代码存放路径

pkg:目录结构如下:

pkg目录结构

linux_amd64:go install 编译后的静态库文件存放位置,非官方包被程序引用时也会先来这里查找是否有编译后的文件,有就链接,能加快程序编译的速度

mod:在使用go mod管理包机制时,go get 下载的对应版本的包存放在这里。

结语:当程序中引用包时,官方包go通过GOROOT查找引用包编译进程序中,非官方包在GOPATH中查找包编译。所以理解GOPATH和GOROOT的作用对于如下所示的包找不到的错误就能快的定位和解决。

相关文章

  • 魏城《终点站》

    终点站 作者:魏城 写于2020-07-20 伦敦 ..................................

  • Elasticsearch + Kibana本地搭建(windo

    2020-07-20 1.Elasticsearch需要至少3个节点才能构成集群,所以搭建时至少启动成功3个节点后...

  • 苹果电脑出现问好文件夹

    2020-07-20 解决办法:1、先强制关机2、按住cmd+R不放,然后点击开机,直至出现苹果logo,放开3、...

  • 2020-07-20

    2020-07-20 日精进打卡 姓名:彭新 宁波蓝天白云供应链管理有限公司 【日精进打卡第865天】 【知学习】...

  • 向量检索排序

    2020-07-20 如何计算特征距离 欧式距离: 两点间的真实距离,值越小,说明距离越近; 余弦距离:就是两个向...

  • 【D207】我们有选择跳出旧有模式的权力——写作营共读打卡第17

    2020-07-20,周一,晴 今天阅读《被讨厌的勇气》第一章(前部分)。 Day174《我们有选择跳出旧有模式的...

  • 独立开发者记录的第四周

    记录日期(2020-07-20) 抱歉更新晚了,本来打算不更新了的,但是想想,一定要坚持才行,所以熬个夜也要把它写...

  • 2020-09-28

    2020-07-20 22:09 中原焦点团队中20李倩坚持分享第185天2020年7月20日 万能问句:是什么让...

  • 相处难?

    很多时候,善良的建议反而会让人变得平庸,人生总需要一些一意孤行 2020-07-20 早起 晴了几天又是一上午的暴...

  • 杂记

    2020-07-20 你想成为什么样的人,完全取决于你能吃多少苦和有着日复一日不可懈怠的i自律。 真的,人要走出去...

网友评论

    本文标题:2020-07-20

    本文链接:https://www.haomeiwen.com/subject/ixpukktx.html