背景

移植完了go以后,在配置变量的时候不太清楚这些变量的含义,找了有关的资料。

使用 go env可以获取 go 有关的环境变量,下面是我的go环境:

GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/home/schips/.cache/go-build"
GOENV="/home/schips/.config/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GONOPROXY=""
GONOSUMDB=""
GOOS="linux"
GOPATH="/home/schips/go"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/home/schips/host/go/install/go_arm"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/home/schips/host/go/install/go_arm/pkg/tool/linux_amd64"
GCCGO="gccgo"
AR="ar"
CC="gcc"
CXX="g++"
CGO_ENABLED="0"
GOMOD=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build637868665=/tmp/go-build -gno-record-gcc-switches"

GOPATH

go 命令依赖一个重要的环境变量:$GOPATH

GOPATH允许多个目录,当有多个目录时,请注意分隔符,多个目录的时候Windows是分号`;

当有多个GOPATH时默认将go get获取的包存放在第一个目录下。

GOPATH 目录约定有三个子目录

  • src存放源代码(比如:.go .c .h .s等) 按照golang默认约定,go run,go install等命令的当前工作路径(即在此路径下执行上述命令)。
  • pkg编译时生成的中间文件(比如:.a)  golang编译包时
  • bin编译后生成的可执行文件(为了方便,可以把此目录加入到 \(PATH 变量中,如果有多个gopath,那么使用`\){GOPATH//

    Golang:GOROOT、GOPATH、GOBIN变量的含义的更多相关文章

    1. GOROOT,GOPATH,GOBIN,project

      GOROOT,GOPATH,GOBIN,project目录   我们接下来一个一个来看关于Go语言中的三个目录的详细解释先通过go env查看go的环境变量(我这里是mac的环境,所以可能和你的不同) ...

    2. 初学者没有搞明白的GOROOT,GOPATH,GOBIN,project目录

      我们接下来一个一个来看关于Go语言中的三个目录的详细解释先通过go env查看go的环境变量(我这里是mac的环境,所以可能和你的不同) localhost:~ zhaofan$ go env GOA ...

    3. 搞明白GOROOT,GOPATH,GOBIN,project目录

      我们接下来一个一个来看关于Go语言中的三个目录的详细解释先通过go env查看go的环境变量(我这里是mac的环境,所以可能和你的不同) localhost:~ zhaofan$ go env GOA ...

    4. go环境变量配置 (GOROOT和GOPATH)的区别和含义

      GOROOT就是go的安装路径 在~/.bash_profile中添加下面语句: GOROOT=/usr/local/go export GOROOT 当然, 要执行go命令和go工具, 就要配置go ...

    5. [Golang] GOROOT、GOPATH和Project目录说明

      go env环境查看 用go env 可查看当前go环境变量. $ go env GOARCH="amd64" GOBIN="" GOEXE="&qu ...

    6. gopath环境变量设置

      #在国内镜像下载二进制包 wget -c  http://www.golangtc.com/static/go/go1.4.1.linux-amd64.tar.gz tar -C /usr/local ...

    7. iReport默认参数和变量的含义解析【转】

      iReport默认参数和变量的含义解析[转] http://uule.iteye.com/blog/775338 参考:http://blog.csdn.net/terryzero/article/d ...

    8. python __name__ 变量的含义

      python __name__ 变量的含义 if __name__ == '__main__': tf.app.run() 当python读入程序时,会初始化一些系统变量.如果当前程序是主程序,__n ...

    9. linux --> Linux变量之$#, $*, $@含义

      Linux变量之$#, $*, $@含义 一.介绍 $# //是传给脚本的参数个数 $ //是脚本本身的名字 $1 //是传递给该shell脚本的第一个参数 $ //是传递给该shell脚本的第二个参 ...

    随机推荐

    1. 【SSM - druid 】配置与使用

      web.xml 配置 <!-- druid的监控页面配置开始 --> <servlet> <servlet-name>StatViewServlet</ser ...

    2. 基于FPM制作RPM软件包!

      工作中有如下情况需要将文件打包rpm: 避免重复工作,将源码程序打包为rpm 使用yum发布项目,项目打包为rpm 将自己写好的程序打包为rpm,提供给用户下载 其他 以前打包rpm是一个非常复杂的一 ...

    3. 前端学习 之 CSS(三)

      九:浮动 浮动是css里面布局最多的一个属性,也是很重要的一个属性. float:表示浮动的意思. 属性值: none: 表示不浮动,默认 left: 表示左浮动 right:表示右浮动 例: htm ...

    4. 全局注册Vue.directive

      1.src目录下新建directives文件 export default { install: function(Vue, option) { // 1:el指绑定的dom元素 // 2:bindi ...

    5. Oracle Parallel使用方法

      一. 并行查询 并行查询允许将一个sql select语句划分为多个较小的查询,每个部分的查询并发地运行,然后将各个部分的结果组合起来,提供最终的结果,多用于全表扫描,索引全扫描等,大表的扫描和连接. ...

    6. 在IDEA中为SpringBoot配置热部署

      版本:IDEA Community 2019.2.2,Spring Boot  2.1.8.RELEASE 流程:pom文件中添加依赖: <dependency> <groupId& ...

    7. 图像分割利用KMeans生成灰度图

      import numpy as np import PIL.Image as image from sklearn.cluster import KMeans def loadData(filePat ...

    8. oracle SQL 练习

      COURSE 表 DROP TABLE "SCOTT"."course"; CREATE TABLE "SCOTT"."cours ...

    9. 异常 日志-<多重catch语句>

      try{ }catch(){ }catch(){ }

    10. Kafka 启动报错java.io.IOException: Can't resolve address.

      阿里云上 部署Kafka 启动报错java.io.IOException: Can't resolve address. 本地调试的,报错 需要在本地添加阿里云主机的 host 映射   linux ...