Go 环境变量

Go 开发环境依赖于一些操作系统环境变量,你最好在安装 Go 之间就已经设置好他们。如果你使用的是 Windows 的话,你完全不用进行手动设置,Go 将被默认安装在目录 c:/go 下。这里列举几个最为重要的环境变量:

  • $GOROOT 表示 Go 在你的电脑上的安装位置,它的值一般都是 $HOME/go,当然,你也可以安装在别的地方。
  • $GOARCH 表示目标机器的处理器架构,它的值可以是 386、amd64 或 arm。
  • $GOOS 表示目标机器的操作系统,它的值可以是 darwin、freebsd、linux 或 windows。
  • $GOBIN 表示编译器和链接器的安装位置,默认是 $GOROOT/bin,如果你使用的是 Go 1.0.3 及以后的版本,一般情况下你可以将它的值设置为空,Go 将会使用前面提到的默认值。

目标机器是指你打算运行你的 Go 应用程序的机器。

Go 编译器支持交叉编译,也就是说你可以在一台机器上构建运行在具有不同操作系统和处理器架构上运行的应用程序,也就是说编写源代码的机器可以和目标机器有完全不同的特性(操作系统与处理器架构)。

为了区分本地机器和目标机器,你可以使用 $GOHOSTOS 和 $GOHOSTARCH 设置目标机器的参数,这两个变量只有在进行交叉编译的时候才会用到,如果你不进行显示设置,他们的值会和本地机器($GOOS 和 $GOARCH)一样。

  • $GOPATH 默认采用和 $GOROOT 一样的值,但从 Go 1.1 版本开始,你必须修改为其它路径。它可以包含多个包含 Go 语言源码文件、包文件和可执行文件的路径,而这些路径下又必须分别包含三个规定的目录:srcpkg 和 bin,这三个目录分别用于存放源码文件、包文件和可执行文件。
  • $GOARM 专门针对基于 arm 架构的处理器,它的值可以是 5 或 6,默认为 6。
  • $GOMAXPROCS 用于设置应用程序可使用的处理器个数与核数,详见第 14.1.3 节。

在接下来的章节中,我们将会讨论如何在 Linux、Mac OS X 和 Windows 上安装 Go 语言。在 FreeBSD 上的安装和 Linux 非常类似。开发团队正在尝试将 Go 语言移植到其它例如 OpenBSD、DragonFlyBSD、NetBSD、Plan 9、Haiku 和 Solaris 操作系统上,你可以在这个页面找到最近的动态:Go Porting Efforts。

摘自:https://github.com/Unknwon/the-way-to-go_ZH_CN/blob/master/eBook/02.2.md

设置 Go 环境变量

我们在 Linux 系统下一般通过文件 $HOME/.bashrc 配置自定义环境变量,根据不同的发行版也可能是文件 $HOME/.profile,然后使用 gedit 或 vi 来编辑文件内容。

 export GOROOT=$HOME/go

为了确保相关文件在文件系统的任何地方都能被调用,你还需要添加以下内容:

 export PATH=$PATH:$GOROOT/bin

在开发 Go 项目时,你还需要一个环境变量来保存你的工作目录。

 export GOPATH=$HOME/Applications/Go

$GOPATH 可以包含多个工作目录,取决于你的个人情况。如果你设置了多个工作目录,那么当你在之后使用 go get(远程包安装命令)时远程包将会被安装在第一个目录下。

在完成这些设置后,你需要在终端输入指令 source .bashrc 以使这些环境变量生效。然后重启终端,输入 go env 和 env 来检查环境变量是否设置正确。

从 官方页面 或 国内镜像 下载 Go 的源码包到你的计算机上,然后将解压后的目录 go 通过命令移动到 $GOROOT 所指向的位置。

 wget https://storage.googleapis.com/golang/go<VERSION>.src.tar.gztar -zxvf go<VERSION>.src.tar.gzsudo mv go $GOROOT

转载于:https://www.cnblogs.com/bonelee/p/6860548.html

go语言笔记——go环境变量goroot是安装了路径和gopath是三方包路径相关推荐

  1. Go 语言运行时环境变量快速导览

    原文: http://dave.cheney.net/2015/11/29/a-whirlwind-tour-of-gos-runtime-environment-variables Go 语言运行时 ...

  2. Go 语言运行时环境变量快速

    Go 语言运行时环境变量快速导览 Go Runtime除了提供:GC, goroutine调度, 定时器,network polling等服务外, 还提供其它一些工具设施,用于开启额外的调试输出, 或 ...

  3. 【JAVA SE】第一章 Java语言概述、环境变量和HelloWorld

    第一章 Java语言概述.环境变量和HelloWorld 文章目录 第一章 Java语言概述.环境变量和HelloWorld 一.Java语言概述 1.Java简介 2.Java发展历史 3.Java ...

  4. Windows10 JDK9安装及配置环境变量与Eclipse安装

    一 下载JDK9 http://www.oracle.com/technetwork/java/javase/downloads/jdk9-downloads-3848520.html 选择版本,系统 ...

  5. java安装路径_java环境变量和查看安装路径

    java环境变量和查看安装路径 一:先说windows查看安装路径和版本吧: set java_home:查看JDK安装路径 java -verbose java -version:查看JDK版本 l ...

  6. Windows配置Java环境变量(下载、安装、配置环境)

    本人以 博客专家 担保,本篇文章可以解决你的问题,若未解决,将为你远程操作,但希望你为我点一个关注!!! 推荐文章MySql 5.7 安装教程(超详细) https://myhub.blog.csdn ...

  7. java环境变量配置jdk_java环境变量配置jdk安装图解.docx

    java环境变量配置jdk安装图解.docx 还剩 11页未读, 继续阅读 下载文档到电脑,马上远离加班熬夜! 亲,很抱歉,此页已超出免费预览范围啦! 如果喜欢就下载吧,价低环保! 内容要点: 继续输 ...

  8. 【Cordova】cordova环境变量配置及安装

    1 配置环境变量 1.1 安装jdk 系统变量→新建 JAVA_HOME 变量 . 变量值填写jdk的安装目录(本人是 D:\Program Files\Android\jdk) 系统变量→新建 CL ...

  9. c语言环境变量的作用,C语言程序的环境变量

    环境变量是一个具有特定名字的对象,它包含了一个或者多个应用程序所将使用到的信息.例如path,当要求系统运行一个程序而没有告诉它程序所在的完整路径时,系统除了在当前目录下面寻找此程序外,还应到path ...

最新文章

  1. 令人头疼的clientTop、scrollTop、offsetTop
  2. 开发技巧: 简述iOS应用间的互相跳转
  3. MAC 安装 pygraphviz 找不到头文件
  4. ceSetThreadPriority设置线程优先级~!
  5. 「leetcode」本周小结!(贪心算法系列四)
  6. jdk的安装及环境变量的配置
  7. Linux-Anaconda-pycharm 安装 配置
  8. Xamarin.Forms 解决ListView高度问题
  9. eclipse 字体设置
  10. Salesforce入门教程(中文)-019 VF创建输入表单
  11. 服务器怎么架设为虚拟主机,架设服务器虚拟主机教程
  12. 猿创征文|Python学习工具千千万,我心中的TOP10
  13. 搜狗浏览器怎么翻译英文网页
  14. iOS逆向--MachoO文件
  15. 网页vnc工具NoVnc
  16. Oracle ebs r12官方虚拟机配置
  17. LDA与QDA分类数据的简单应用(python)
  18. 服装搭配app开发项目特点在这几个方面
  19. MOS 管 场效应管 应用
  20. 火山PC画板自绘打造自定义列表框

热门文章

  1. linux命令行之find详解
  2. 决策树 随机森林 xgboost_一文搞定XGboost 面试常见问题
  3. linux启动phpstudy,phpstudy启动不了解决方法
  4. java sessionid放入cookie_sessionID和cookie
  5. 一元享移动怎么样_移动大王卡千万别买!!!
  6. ceph存储原理_【理论研究】漫谈传统IT基础设施10-存储(04)
  7. 2021广西高考成绩几点可以查询,高考完多久分数能出来广西 2021年广西高考分数查询公布时间...
  8. java实现窗口透明_java实现窗口透明
  9. 教学一体机属于计算机的什么应用,教学一体机可以投屏吗
  10. python脚本如何监听终止进程行为,如何通过脚本名获取pid