文档章节

Ubuntu15.10编译安装Golang1.5

douyur
 douyur
发布于 2017/02/26 20:33
字数 818
阅读 13
收藏 0

安装思路

  • 编译安装go1.4
  • 将go目录名称改为go1.4
  • 修改.bashrc中的环境变量
  • 编译安装go1.5

注:为了构建 Go 1.x (x ≥ 5),需要先安装 Go 1.4 到 $GOROOT_BOOTSTRAP. 默认的 $GOROOT_BOOTSTRAP$HOME/go1.4. 使用 Go 1.4 作为启动的基础版本来编译工具链。

安装Go语言相关工具

sudo apt-get install bison ed gawk gcc libc6-dev make gccgo-5

解压Go语言源码包

$ tar -zxvf go1.4.2.linux-amd64.tar.gz

注:源码包解压后根目录的名字是 go,后面设置环境变量会用到。

配置Go1.4语言环境变量

环境变量的配置不论是下一步中编译Go语言源码,还是在之后的开发过程中都至关重要

$ vim ~/.bashrc
export GOROOT=$HOME/go
export GOROOT_BOOTSTRAP=$HOME/go
export GOARCH=amd64
export GOOS=linux
export GOBIN=$GOROOT/bin/
export GOTOOLS=$GOROOT/pkg/tool/
export PATH=$GOBIN:$GOTOOLS:$PATH
export GOPATH=$HOME/goPro

$ source ~/.bashrc

注:

  • GOROOT是存放源码包的位置。比如,我这里是放在/home/plusgo/目录下;
  • GOROOT_BOOTSTRAP在1.5编译时使用 Go 1.4 的Go compilers进行构建,则需指定go1.4的路径;
  • GOARCH 与 GOOS 与下载的发行版有关,例如:我下载的是64位的Ubuntu,因此 GOARCH 为 amd64;如果是32位的Ubuntu,则填386;而GOOS 为 linux;
  • GOBIN为GOROOT路径下bin文件夹路径;
  • GOTOOLS路径在编译时会用到;
  • PATH路径很关键,指定GOBIN和GOTOOLS路径;
  • GOPATH为Go的工作目录,可以随时修改;这里,我选择将GOPATH指定到/home/plusgo/goPro路径下;则在$HOME目录下新建一个goPro目录($ mkdir goPro)作为Go的工作目录;

编译Go1.4源码

$ cd $GOROOT/src
$ ./all.bash

稍等一会,等待编译完成后,出现下面的内容,则为编译通过:

ALL TESTS PASSED
---
Installed Go for linux/amd64 in /home/plusgo/go
Installed commands in /home/plusgo/go/bin/

修改编译好的go目录

将编译好的go目录改为go1.4目录

$ mv go go1.4

修改.bashrc环境变量

$ vim ~/.bashrc
export GOROOT=$HOME/go
export GOROOT_BOOTSTRAP=$HOME/go1.4
export GOARCH=amd64
export GOOS=linux
export GOBIN=$GOROOT/bin/
export GOTOOLS=$GOROOT/pkg/tool/
export PATH=$GOBIN:$GOTOOLS:$PATH
export GOPATH=$HOME/goPro
 
$ source ~/.bashrc

注:这里将GOROOT_BOOTSTRAP路径指定为已编译好的go1.4目录;

编译Go1.5源码

将下载好的go1.5.1.linux-amd64.tar.gz安装包放到$HOME目录下,并解压,默认为go目录; 进入源码文件夹进行编译:

$ cd $GOROOT/src
$ ./all.bash

稍等一会,等待编译完成后,出现下面的内容,则为编译通过:

ALL TESTS PASSED
---
Installed Go for linux/amd64 in /home/plusgo/go
Installed commands in /home/plusgo/go/bin/

接着输入go目录,如果看到如下信息,则即可使用Go语言了:

$ go
Go is a tool for managing Go source code.
Usage:
    go command [arguments]
The commands are:
    build       compile packages and dependencies
    clean       remove object files
    doc         show documentation for package or symbol
    env         print Go environment information
    fix         run go tool fix on packages
    fmt         run gofmt on package sources
    generate    generate Go files by processing source
    get         download and install packages and dependencies
    install     compile and install packages and dependencies
    list        list packages
    run         compile and run Go program
    test        test packages
    tool        run specified go tool
    version     print Go version
    vet         run go tool vet on packages
Use "go help [command]" for more information about a command.
Additional help topics:
    c           calling between Go and C
    buildmode   description of build modes
    filetype    file types
    gopath      GOPATH environment variable
    environment environment variables
    importpath  import path syntax
    packages    description of package lists
    testflag    description of testing flags
    testfunc    description of testing functions
Use "go help [topic]" for more information about that topic.

© 著作权归作者所有

共有 人打赏支持
douyur
粉丝 5
博文 62
码字总数 26478
作品 0
杭州
程序员
私信 提问
golang1.5源码安装说明

golang 1.5的安装说明 由于golang1.5使用了golang来编译自己,所以需要先安装golang1.4,然后使用1.4的go来编译go1.5的源码 源码包官方的下载地址 https://go.googlesource.com/go https://g...

leicc
2015/10/17
422
0
GIScript2016的重要变化

GIScript是一个开源的地理信息处理脚本系统。 GIScript 2016的目录结构进行了调整,因此2016版需要重新编译。 GIScript 2016目前可以支持Windows和Linux,考虑到技术发展的趋势和数据处理的场...

openthings
2015/12/07
147
0
安装faac编译时报错没法解决啊,网上的方案都不行!!来个大神呗!!

在ubuntu15.10虚拟机安装ffmpeg,在安装faac时报错如下在网上看也有这个错,但是按照网上的解决方法都不行,比如注释掉mpeg4ip.h文件里的126行或修改123-129行。求大神帮忙解决啊~~~~...

这是个很萌的名字
2016/06/14
419
3
Ubuntu15.10无法安装ap-hotspot的问题

Lenovo:~$ sudo apt-get install ap-hotspot 正在读取软件包列表... 完成 正在分析软件包的依赖关系树 正在读取状态信息... 完成 E: 无法定位软件包 ap-hotspot 求助各位大婶,最近安装啦Ubu...

Newbie-Linux
2016/01/03
464
2
VirtualBox5.1如何安装增强包?

在mac下安装了virtualbox5.1.4 ,然后安装了ubuntu15.10的虚拟机,想要配置 共享文件夹。 实验中发现配置 共享文件夹后 执行mount 命令,类似sudo mount -t vboxsf gongxiang /mnt/shared 这...

thu_gaoyong
2016/09/09
1K
0

没有更多内容

加载失败,请刷新页面

加载更多

zookeeper配置与使用

一.登录官网下载 不要带后缀的,那是公侧版本,下稳定版,比如3.4.9 二.安装与使用 解压后bin里是启动程序 配置文件:在conf下 复制zoo_sample.cfg改名为为zoo.cfg,打开zoo修改文件...

小兵胖胖
37分钟前
2
0
spring源码阅读笔记(一)

ClassPathXmlApplicationContext 与 FileSystemXmlApplicationContext 用了这么久的框架,是时候搞一下源码了,一般最初接触spring 从以下步骤开始 创建一个bean类 并创建 ooxx.xml之类的spr...

NotFound403
今天
4
0
MySQL主从配置

12月14日任务 17.1 MySQL主从介绍 17.2 准备工作 17.3 配置主 17.4 配置从 17.5 测试主从同步 MySQL主从介绍 MySQL主从又叫做Replication、AB复制。简单将就是A/B两个服务器做主从后,在A上写...

robertt15
今天
15
0
我的Linux系统九阴真经

在今天,互联网的迅猛发展,科技技术也日新月异,各种编程技术也如雨后春笋一样,冒出尖来了。各种创业公司也百花齐放百家争鸣,特别是针对服务行业,新型互联网服务行业,共享经济等概念的公...

问题终结者
今天
22
0
Java 使用 gson 对 json 根据 key 键进行排序

引入Google的gson jar <dependency> <groupId>com.google.code.gson</groupId> <artifactId>gson</artifactId> <version>2.8.0</version>......

yh32
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部