从源代码构建 Go 开发环境
从源代码构建 Go 开发环境
Go 1.5 之前的版本
安装C 语言开发环境
在Go 1.5 之前的版本(比如 1.3、1.4),都会部分的依赖 C 语言的工具链,所以如果你有C 语言的开发环境,就可以直接构建 Go 的开发环境了。如果没有 C 语言的开发环境,那就先安装C 语言的开发环境。
#我的目标机器是centos
yum install gcc
建立 Go 的目录结构
基本目录是这样的
$HOME/golang
|--3rd
|--go
|--own
因为我们还要安装 Go 1.5 之后的版本,需要向后兼容,所以我们需要把目录进行一下修改。添加版本目录。并且把go 指向我们当前使用的Go 版本目录。修改后的目录结构如下:
$HOME/golang
|--3rd
|--go -> go1.
|--go1.
|--own
此时的 go 目录是软链接,指向 go1.4。我是使用下载好的 Go 源码进行安装的,所以首先把源码解压为go1.4目录。
环境变量
GOPATH=$HOME/golang/3rdpkg:$HOME/golang/go:$HOME/golang/own
按照这样的配置,当使用 go get 获取 Go 包的时候,会首先导入到 $GOPATH 的第一个路径,也就是 3rdpkg 目录下。便于把第三方包和自己的项目区分开来。
设置 GOROOT
GOROOT=$HOME/golang/go
设置 PATH 变量
PATH=$PATH:$GOROOT/bin/
此时完整的环境变量设置为
GOPATH=$HOME/golang/3rdpkg:$HOME/golang/go:$HOME/golang/own
GOROOT=$HOME/golang/go
PATH=$PATH:$GOROOT/bin
安装 Go 1.4
cd $HOME/golang/go/src
./all.bash
执行完成之后,Go 1.4 就部署完成了。
Go 1.5 之后的版本
在 Go 1.5 以及之后的版本都移除了对 C 语言的依赖,而是使用 Go 编译新的Go 语言版本。所以我们的目录结构需要再做一下更改,让 Go 1.4来帮助我们构建新的Go 环境。
因为我们的目标是Go 1.5之后的版本,所以1.6 、1.7都是适用的,结下来我们编译最新的Go 1.7 环境。那我们的目录结构就是下面的样子了:
$HOME/golang
|--3rd
|--go -> go1.
|--go-bootstrap -> go1.
|--go1.
|--go1.
|--own
环境变量也做相应的修改
GOPATH=$HOME/golang/3rdpkg:$HOME/golang/go:$HOME/golang/own
GOROOT=$HOME/golang/go
PATH=$PATH:$GOROOT/bin
GOROOT_BOOTSTRAP=$HOME/golang/go-bootstrap cd $HOME/golang/go/src
./all.bash
参考 这里
同步发表:http://www.fengbohello.top/blog/p/golang
从源代码构建 Go 开发环境的更多相关文章
- Python黑帽编程1.2 基于VS Code构建Python开发环境
Python黑帽编程1.2 基于VS Code构建Python开发环境 0.1 本系列教程说明 本系列教程,采用的大纲母本为<Understanding Network Hacks Atta ...
- 使用Intellij IDEA构建spark开发环境
近期开始研究学习spark,开发环境有多种,由于习惯使用STS的maven项目,但是按照许多资料的方法尝试以后并没有成功,也可能是我环境问题:也可以是用scala中自带的eclipse,但是不太习惯, ...
- Vagrant 构建 Linux 开发环境
Vagrant 是一个简单易用的部署工具,用英文说应该是 Orchestration Tool .它能帮助开发人员迅速的构建一个开发环境,帮助测试人员构建测试环境, Vagrant 基于 Ruby 开 ...
- gulp + gulp-better-rollup + rollup 构建 ES6 开发环境
gulp + gulp-better-rollup + rollup 构建 ES6 开发环境 关于 Gulp 就不过多啰嗦了.常用的 js 模块打包工具主要有 webpack.rollup 和 bro ...
- 使用create-react-app 快速构建 React 开发环境以及react-router 4.x路由配置
create-react-app 是来自于 Facebook,通过该命令我们无需配置就能快速构建 React 开发环境. create-react-app 自动创建的项目是基于 Webpack + E ...
- react学习笔记(一)用create-react-app构建 React 开发环境
React 可以高效.灵活的用来构建用户界面框架,react利用高效的算法最小化重绘DOM. create-react-app 是来自于 Facebook,通过该命令不需配置就能快速构建 React ...
- JDK1.7+eclipse 4.4(luna)+pydev4.4.5构建django开发环境
最近一直用pycharm搞django学习,但是到2017年随着版本的不断更新,启动之慢,吃资源吃内存越来越严重.果然想找一个IDE替代品. 之前用java开发分布式WEB应用,用eclipse开了N ...
- 【React】使用 create-react-app 快速构建 React 开发环境
create-react-app 是来自于 Facebook,通过该命令我们无需配置就能快速构建 React 开发环境. create-react-app 自动创建的项目是基于 Webpack + E ...
- XamarinForms教程构建XamarinForms开发环境
构建XamarinForms开发环境 所谓Xamarin.Forms的开发环境,就是指在基本硬件和数字软件的基础上,为支持系统软件和应用软件的工程化开发和维护而使用的一组软件,简称SDE.对于任何的程 ...
随机推荐
- Linux下查看磁盘与目录的容量——df、du
df:列出文件系统的整体磁盘使用量: du:评估文件系统的磁盘使用量(常用于评估目录所占容量) df参数: -a:列出所有的文件系统,包括系统特有的/proc等文件系统 -k:以KB的容量显示各文件系 ...
- linux du和df
df.du和fdisk这三个常用命令:df用于检查文件系统磁盘占用情况,du检查磁盘空间占用情况,而fdisk用于磁盘分区. du,disk usage,是通过搜索文件来计算每个文件的大小然后累加,d ...
- [转载]python property
@property 简单解释. http://python.jobbole.com/80955/
- Mac 编写oracle 连接脚本
首先需要本地存有sqlplus命令, 如果没有则需要到官网下载 也可点击我进行下载 (解压 readme.txt 有安装配置说明): 在Oracle官网下载instant client for os ...
- -bash: fork: retry: Resource temporarily unavailable
登陆不了服务器The server refused to start a shell. 登陆服务器后执行ls命令报错: 1 2 $ls -bash: fork: retry: Resource t ...
- Selenium使用
定位 1.普通 by id, name,class_name,link_text 2.加强 xpath css
- 让一个图片在div中居中(四种方法)
第一种方法: <div class="title"> <div class="flag"></div> <div cl ...
- [原创]Windows Server 2003 物理机转换为VMware虚拟机出现VSS错误的处理
一台Windows Server 2003 物理机需要转换为VMware虚拟机,工具为Vmware vCenter Converter Standalone 6.0,转换开始就出现错误“FAILED: ...
- 如何在Linux中搭建禅道8.4.1(httpd+php+mysql)
1.安装httpd 命令:yum install httpd 然后一路y即可 2.安装php 命令:yum install php 3.安装php-mysql 命令:yum install php ...
- 原生js焦点轮播图
原生js焦点轮播图主要注意这几点: 1.前后按钮实现切换,同时注意辅助图2.中间的button随着前后按钮对应切换,同时按button也能跳转到相应的index3.间隔调用与无限轮播.4.注意在动画时 ...