1. 安装GO

  安装go语言包:

$ curl -O https://storage.googleapis.com/golang/go1.10.1.linux-amd64.tar.gz

   

  下载完成后,解压至/usr/local 目录下:

$ sudo tar -C /usr/local -xzf go1.10.1.linux-amd64.tar.gz

2. 配置go语言环境变量

  进入.bashrc 配置环境变量:

$ sudo vim ~/.bashrc
或者是:
$ sudo vim /etc/profile

  在最后面加入如下代码:

export GOPATH=$HOME/go
export GOROOT=/usr/local/go
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin

    保存,退出。

  使环境变量生效:

$ source ~/.bashrc
或者是:
$ source /etc/profile

  

  查看版本号后没问题,说明配置成功。

3.注意事项:

 1.GOPATH路径与GOOROOT相同,会报错!

  

  报错信息如下:

  warning:GOPATH set to GOROOT(/usr/local/go) has no effect

    

  解决方法:

   GOPATH设置一下,并且不要和 GOROOT设置成同一个目录

  改正后:

  

  2.主要变量说明:

  1、GOROOT就是go的安装路径,默认情况下,系统已经自动配置了GOROOT。默认为 /usr/local/go

  2、GOPATH是作为编译后二进制的存放目的地和import包时的搜索路径 (其实也是你的工作目录, 你可以在src下创建你自己的go源文件, 然后开始工作)

     GOPATH目录结构:

goWorkSpace // (goWorkSpace为GOPATH目录)
-- bin // golang编译可执行文件存放路径,可自动生成。
-- pkg // golang编译的.a中间文件存放路径,可自动生成。
-- src // 源码路径。按照golang默认约定,go run,go install等命令的当前工作路径(即在此路径下执行上述命令)。

    GOPATH之下主要包含三个目录: bin、pkg、src

    (1)bin目录主要存放可执行文件;

    (2)pkg目录存放编译好的库文件, 主要是*.a文件;

    (3)src目录下主要存放go的源文件

    需要把GOPATH中的可执行目录也配置到环境变量中, 否则你自行下载的第三方go工具就无法使用了。

  3、GOBIN go install编译存放路径。不允许设置多个路径。可以为空。为空时则遵循“约定优于配置”原则,可执行文件放在各自GOPATH目录的bin文件夹中(前提是:package main的main函数文件不能直接放到GOPATH的src下面

  对于GOPATH与工作空间的详细说明,可参看文档:https://github.com/astaxie/build-web-application-with-golang/blob/master/zh/01.2.md

  对于开发工具,升级包等了解,可参看文档:https://www.cnblogs.com/wenhuakulv1989/p/7028984.html

  4.也可以如下设置环境变量:

  


【时间仓促,如有错误,欢迎指正! ||   欢迎一起学习交流, 请在评论区留言!

【本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。】

【转载请联系博主,同意后务必注明出处:http://www.cnblogs.com/X-knight/


最新文章

  1. Distributed MVCC based cross-row transaction
  2. solr&lucene3.6.0源码解析(四)
  3. .NET通过RFC读取SAP数据
  4. 使用jenkins构建持续集成平台
  5. urllib,urllib2,requests对比
  6. JSP列表形式显示数据库中的数据 OracleCachedRowSet 实例
  7. 解决用ASP.NET下载文件时,文件名为乱码的问题
  8. Tomcat部署多个项目及相关配置
  9. Hadoop认知--在不同的阶段
  10. 【转载】FaceBook - How to add a Privacy Policy to your Apps?
  11. hdu_2871_Memory Control(巨恶心线段树)
  12. 直播协议 HTTP-FLV 详解
  13. shell参数处理模板
  14. ccpc杭州站 赛后总结
  15. SQL反模式学习笔记11 限定列的有效值
  16. ProjectEuler && Rosecode && Mathmash做题记录
  17. TestNg 5.类分组
  18. ABP模块运行解析
  19. 移动端自动化测试-WTF Appium?
  20. ARM-GPIO

热门文章

  1. 远程服务器使用phantomjs报错:phantomjs unexpectedly exited. Status code was: 127
  2. kingpin_parser.go
  3. C++11中list特有版本的算法
  4. B20J_2733_[HNOI2012]永无乡_权值线段树合并
  5. Windows上安装配置SSH教程(3)——在Windows系统上安装与配置WinSCP
  6. MATLAB——画图(经典)
  7. python爬虫Scrapy(一)-我爬了boss数据
  8. Asp.Net Core Web应用程序—探索
  9. 一文助您成为Java.Net双平台高手
  10. Android studio 2 版本升级 Android studio 3 版本注意事项