go语言环境变量及其作用

Go语言环境变量

set GO111MODULE=on
set GOARCH=amd64
set GOBIN=
set GOCACHE=C:\Users\rrrr\AppData\Local\go-build
set GOENV=C:\Users\rrrr\AppData\Roaming\go\env  
set GOEXE=.exe
set GOEXPERIMENT=
set GOFLAGS=
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOINSECURE=
set GOMODCACHE=C:\Users\rrrr\go\pkg\mod
set GONOPROXY=
set GONOSUMDB=
set GOOS=windows
set GOPATH=C:\Users\rrrr\go
set GOPRIVATE=
set GOPROXY=https://mirrors.aliyun.com/goproxy
set GOROOT=E:\GO\install
set GOSUMDB=off
set GOTMPDIR=
set GOTOOLCHAIN=auto
set GOTOOLDIR=E:\GO\install\pkg\tool\windows_amd64
set GOVCS=
set GOVERSION=go1.22.4
set GCCGO=gccgo
set GOAMD64=v1
set AR=ar
set CC=gcc
set CXX=g++
set CGO_ENABLED=1
set GOMOD=NUL
set GOWORK=
set CGO_CFLAGS=-O2 -g
set CGO_CPPFLAGS=
set CGO_CXXFLAGS=-O2 -g
set CGO_FFLAGS=-O2 -g
set CGO_LDFLAGS=-O2 -g
set PKG_CONFIG=pkg-config
set GOGCCFLAGS=-m64 -mthreads -Wl,--no-gc-sections -fmessage-length=0 -ffile-prefix-map=C:\Users\rrrr\AppData\Local\Temp\go-build59495733=/tmp/go-build -gno-record-gcc-switches
  1. GO111MODULE:

    • 用途: 控制Go模块支持。
    • :
      • on: 启用模块支持。
      • off: 禁用模块支持。
      • auto: 根据环境自动启用或禁用模块支持。
  2. GOARCH:

    • 用途: 指定编译目标的架构。
    • : 常见值包括 amd64, 386, arm, arm64 等。在此例中,amd64 表示目标架构为64位x86架构。
  3. GOBIN:

    • 用途: 指定go install命令安装二进制文件的目录。
    • : 此例为空,表示安装路径默认为 GOPATH/bin
  4. GOCACHE:

    • 用途: 指定构建缓存的目录。
    • : C:\Users\rrrr\AppData\Local\go-build,表示缓存存储在这个目录中。
  5. GOENV:

    • 用途: 指定存储Go环境变量的文件路径。
    • : C:\Users\rrrr\AppData\Roaming\go\env,表示Go环境变量存储在这个文件中。
  6. GOEXE:

    • 用途: 指定生成可执行文件的后缀。
    • : .exe,表示在Windows平台上生成的可执行文件以 .exe 结尾。
  7. GOEXPERIMENT:

    • 用途: 启用实验性的Go编译器功能。
    • : 空,表示没有启用任何实验性功能。
  8. GOFLAGS:

    • 用途: 指定go命令行工具的默认标志。
    • : 空,表示没有默认标志。
  9. GOHOSTARCH:

    • 用途: 指定运行Go编译器的主机架构。
    • : amd64,表示主机架构为64位x86架构。
  10. GOHOSTOS:

    • 用途: 指定运行Go编译器的主机操作系统。
    • : windows,表示主机操作系统为Windows。
  11. GOINSECURE:

    • 用途: 指定不验证SSL证书的私有模块。
    • : 空,表示没有不验证SSL证书的模块。
  12. GOMODCACHE:

    • 用途: 指定模块缓存的目录。
    • : C:\Users\rrrr\go\pkg\mod,表示模块缓存存储在这个目录中。
  13. GONOPROXY:

    • 用途: 指定不使用代理的私有模块。
    • : 空,表示所有模块都使用代理。
  14. GONOSUMDB:

    • 用途: 指定不使用校验和数据库的私有模块。
    • : 空,表示所有模块都使用校验和数据库。
  15. GOOS:

    • 用途: 指定编译目标的操作系统。
    • : windows,表示目标操作系统为Windows。
  16. GOPATH:

    • 用途: 指定Go工作区的根目录。
    • : C:\Users\rrrr\go,表示Go工作区根目录为这个路径。
  17. GOPRIVATE:

    • 用途: 指定私有模块的路径前缀。
    • : 空,表示没有私有模块。
  18. GOPROXY:

    • 用途: 指定Go模块代理的地址。
    • : https://mirrors.aliyun.com/goproxy,表示使用阿里云的Go模块代理。
  19. GOROOT:

    • 用途: 指定Go安装的根目录。
    • : E:\GO\install,表示Go安装在这个目录中。
  20. GOSUMDB:

    • 用途: 指定Go模块校验和数据库。
    • : off,表示禁用模块校验和数据库。
  21. GOTMPDIR:

    • 用途: 指定临时文件的目录。
    • : 空,表示使用系统默认的临时文件目录。
  22. GOTOOLCHAIN:

    • 用途: 指定Go工具链版本。
    • : auto,表示自动选择工具链版本。
  23. GOTOOLDIR:

    • 用途: 指定Go工具的目录。
    • : E:\GO\install\pkg\tool\windows_amd64,表示Go工具存储在这个目录中。
  24. GOVCS:

    • 用途: 指定版本控制系统配置。
    • : 空,表示使用默认配置。
  25. GOVERSION:

    • 用途: 指定当前Go的版本。
    • : go1.22.4,表示使用Go 1.22.4版本。

C/C++环境变量

  1. GCCGO:

    • 用途: 指定Go编译器使用的gccgo编译器。
    • : gccgo,表示使用gccgo编译器。
  2. GOAMD64:

    • 用途: 指定64位架构的版本。
    • : v1,表示使用v1版本的amd64架构。
  3. AR:

    • 用途: 指定ar工具,用于创建、修改和提取归档文件。
    • : ar,表示使用默认的ar工具。
  4. CC:

    • 用途: 指定C编译器。
    • : gcc,表示使用gcc编译器。
  5. CXX:

    • 用途: 指定C++编译器。
    • : g++,表示使用g++编译器。
  6. CGO_ENABLED:

    • 用途: 指定是否启用cgo(允许Go程序调用C代码)。
    • : 1,表示启用cgo。
  7. CGO_CFLAGS:

    • 用途: 指定传递给C编译器的标志。
    • : -O2 -g,表示优化级别为O2,并包含调试信息。
  8. CGO_CPPFLAGS:

    • 用途: 指定传递给C预处理器的标志。
    • : 空,表示没有传递额外标志。
  9. CGO_CXXFLAGS:

    • 用途: 指定传递给C++编译器的标志。
    • : -O2 -g,表示优化级别为O2,并包含调试信息。
  10. CGO_FFLAGS:

    • 用途: 指定传递给Fortran编译器的标志。
    • : -O2 -g,表示优化级别为O2,并包含调试信息。
  11. CGO_LDFLAGS:

    • 用途: 指定传递给链接器的标志。
    • : -O2 -g,表示优化级别为O2,并包含调试信息。
  12. PKG_CONFIG:

    • 用途: 指定pkg-config工具的路径,用于管理库的编译和链接标志。
    • : pkg-config,表示使用默认的pkg-config工具。
  13. GOGCCFLAGS:

    • 用途: 指定传递给GCC编译器的标志。
    • : -m64 -mthreads -Wl,--no-gc-sections -fmessage-length=0 -ffile-prefix-map=C:\Users\rrrr\AppData\Local\Temp\go-build59495733=/tmp/go-build -gno-record-gcc-switches,表示编译器使用这些标志。

总结

这些环境变量用于配置Go语言编译器、工具链和构建过程,确保代码在不同的操作系统和架构上能够正确编译

参考文档:https://blog.csdn.net/qq_38151401/article/details/105729884
https://blog.csdn.net/qq_38151401/article/details/105780251
https://blog.csdn.net/qq_27682041/article/details/78759542

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/48579.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网络学习|如何理解服务的端口号

文章目录 1. 端口号的定义2. 端口号的分类3. 端口号的用途4. 注意事项5. 示例图解 后端面试中可能遇到的端口相关问题及答案1. 什么是端口号?为什么需要端口号?2. 知名端口(Well-Known Ports)有哪些,举例说明&#xff…

【面试题】喔影网络科技面试题复盘

1. 分别用Flex布局和Grid布局实现两边固定中间自适应三列布局 相关文章:https://juejin.cn/post/7249010956935266364?searchId202407250009004EE0BBD1E792FB92FB60#heading-5 2. Http1.1 和 Http 2 有什么区别? 新的二进制格式;多路复用&a…

《Java初阶数据结构》----4.<线性表---Stack栈和Queue队列>

前言 大家好,我目前在学习java。之前也学了一段时间,但是没有发布博客。时间过的真的很快。我会利用好这个暑假,来复习之前学过的内容,并整理好之前写过的博客进行发布。如果博客中有错误或者没有读懂的地方。热烈欢迎大家在评论区…

学习笔记6:docker swarm

docker swarm Docker Swarm 是 Docker 原生的集群管理工具,它允许你将多个 Docker 主机组合成一个虚拟的单一主机。通过 Docker Swarm,你可以管理多个容器的部署、扩展和负载均衡,而不需要手动配置每台主机。以下是 Docker Swarm 的一些关键…

DAMA学习笔记(七)-数据集成和互操作

1.引言 数据集成和互操作(DII)描述了数据在不同数据存储、应用程序和组织这三者内部和之间进行移动和整合的相关过程。数据集成是将数据整合成物理的或虚拟的一致格式。数据互操作是多个系统之间进行通信的能力。数据集成和互操作的解决方案提供了大多数组织所依赖的基本数据管…

STM32F103C8T6与HC-05:构建低功耗蓝牙通信网络

构建低功耗蓝牙(Bluetooth Low Energy, BLE)通信网络是一种在嵌入式系统中实现设备间无线通信的有效方式。STM32F103C8T6微控制器虽然原生不支持BLE,但可以通过外接BLE模块如HC-05(注意:HC-05本身不是低功耗蓝牙模块&a…

跨文档消息传递:WebKit中的Web通信新纪元

跨文档消息传递:WebKit中的Web通信新纪元 在现代Web应用中,跨文档消息传递(Cross-document messaging)是一种允许不同源的文档进行通信的机制。这种机制对于构建复杂的Web应用,如嵌入式框架(iframes&#…

【SpringBoot】第3章 SpringBoot的系统配置

3.1 系统配置文件 3.1.1 application.properties SpringBoot支持两种不同格式的配置文件,一种是Properties,一种是YML。 SpringBoot默认使用application.properties作为系统配置文件,项目创建成功后会默认在resources目录下生成applicatio…

父子组件的传参问题,一方改变,另一方随之改变

目录 1.问题 2.解决方案 3.前端中的深拷贝及浅拷贝问题总结 1.问题 在子组件中通过emit调用父组件的方法,并传递参数,当子组件中修改传递给父组件的参数时,即使没有将修改后的值传递给父组件,父组件中的值依然修改了。 原因是…

Unity XR Interaction Toolkit设置或监听手柄按键事件(三)

提示:文章有错误的地方,还望诸位大神不吝指教! 文章目录 前言一、XRI Default Input Actions1.导入官方案例2.设置控制器绑定,如手柄、主/辅助按钮、操纵杆等1.要设置控制器绑定,如左右手 手柄、主/辅助按钮、操纵杆等…

转换,模糊查询属性,校验html写法

element ui 模糊查询 filterable 表单规则 :rulesrules el-form-item中的prop绑定的属性写规则rules blur 失去焦点事件 forcus 获取焦点事件 映射转换 function mappingFn(code){ let arr mappingList.value.map((item,index)>{ if(item.codecode){ r…

[k8s源码]8.deltaFIFO

deltaFIFO DeltaFIFO: 这是一个特殊类型的队列,它结合了FIFO(先进先出)队列的特性和增量(Delta)处理的能力。DeltaFIFO 中是按顺序存储的,但它们不必严格按照发生的顺序逐个处理。这种设计提供了处理的灵…

nosql--redis

nosql--不仅仅是sql,是所有非关系型数据库的统称 常用的NOSQL产品 redis [企业使用频率很高] mongodb hbase [适合大数据] redis redis可以用作数据库,缓存和消息代理,而且里面可以存储多种数据类型,提供了高可用机制 安装redi…

【C++中线程学习】

1、多线程 C11之前没有引入线程的概念&#xff0c;如果想要实现多线程&#xff0c;需要借助操作系统平台提供的API&#xff0c;比如Linux的<pthead.h>&#xff0c;或者windows下的<windows.h>。 C11提供了语言层面上的多线程&#xff0c;包含在头文件<thread.h…

Python中的异常处理与调试技巧

在Python编程中&#xff0c;异常处理&#xff08;Exception Handling&#xff09;和调试&#xff08;Debugging&#xff09;是两个至关重要的技能&#xff0c;它们帮助开发者识别并修复代码中的问题&#xff0c;确保程序的稳定性和可靠性。本文将详细介绍Python中的异常处理机制…

浅谈机器学习与深度学习的区别?

深度学习与机器学习是人工智能&#xff08;AI&#xff09;领域的两个重要分支&#xff0c;它们在数据处理、硬件依赖以及应用范围等方面有显著的区别。具体分析如下&#xff1a; 1. 数据处理 机器学习&#xff1a;机器学习通常需要较少的数据来训练模型&#xff0c;因为它使用…

在Windows下部署jar包,关闭命令提示符可以后台运行

前言 大多数情况下&#xff0c;都是选用Linux作为服务器部署服务&#xff0c;在Linux中通过以下命令运行 nohup java -jar xxxxx-1.0-SNAPSHOT.jar 但是有时由于其他原因&#xff0c;或本地测试&#xff0c;或云服务器使用Windows server等等&#xff0c;需要在Windows上面运…

matlab仿真 数字基带传输(下)

&#xff08;内容源自详解MATLAB&#xff0f;SIMULINK 通信系统建模与仿真 刘学勇编著第六章内容&#xff0c;有兴趣的读者请阅读原书&#xff09; clear all Fd1;%符号采样频率 Fs10;%滤波器采样频率 r0.2;%滤波器滚降系数 delay4;%滤波器时延 [num,den]rcosine(Fd,Fs,defau…

Python读取grib数据获取变量推荐姿势

前情提要 最近使用的EC和GFS预报数据给的都是grib2格式的&#xff0c;之前用惯nc格式的&#xff0c;python读取grib2数据的时候还走了些弯路&#xff0c;看到很多博客上给的教程其实不能满足我的需求&#xff0c;现在搞明白了分享一下 pygrib安装 第一个问题就是我电脑上pyg…

通信原理实验六:实验测验

实验六 实验测验 一&#xff1a;测验内容和要求 测试需要完成以下几个步骤&#xff1a; 配置好以下网络图&#xff1b;占总分10%&#xff08;缺少一个扣一分&#xff09;根据下面图配置好对应的IP和网关以及路由等相关配置&#xff0c;保证设备之间连通正常&#xff1b;占总…