zoukankan      html  css  js  c++  java
  • 从源码(编译)安装golang

    从源码安装golang

    通常情况下,安装go只需要在官网(https://golang.org/dl/)下载适合系统的二进制发布包,按照安装说明进行安装即可。

    对于Linux, Mac OS XFreeBSD系统下的安装,三步即可完成:

    1.下载tarballs文件go$VERSION.$OS-$ARCH.tar.gz,例如1.8.3

        wget https://storage.googleapis.com/golang/go1.8.3.linux-amd64.tar.gz)

    2.执行tar -C /usr/local -xzf go$VERSION.$OS-$ARCH.tar.gz提取到 /usr/local

    3.设置环境变量,将/usr/local/go/bin 加入到PATH环境变量。可以通过将

    export PATH=$PATH:/usr/local/go/bin 添加到/etc/profile$HOME/.profile文件的最后一行。

    对于windows系统下的安装,可以下载msi安装包,安装程序自动将go发布拷贝到c:go目录下,并且将c:goin目录加入到PATH环境变量。

    如果安装位置不是/usr/local/go或者c:go目录,则需要设置GOROOT环境变量,将GOROOT/bin加入到PATH环境变量。

    Go的一大特征是简单,通过下载二进制发布包安装go环境就充分体现了简单性。

    某些时候,可能要使用特殊版本的go,从源码安装,这同样很简单。从源码安装,首先要进行编译。Go 1.5实现了bootstrapping,所以编译1.5以后的版本和编译1.5以前的版本会略有不同。bootstrapping是编译器领域的一个术语,中文翻译为自举或自展,通俗地讲“用要编译的目标语言编写其编译器(汇编器)”。Go1.5开始编译器和运行时完全用Go语言编写(还有少量汇编);go1.4是最后一个用C编写工具链的发布。

    编译go1.4ubuntu 16.04.2系统

    cd ~

    wget https://storage.googleapis.com/golang/go1.4-bootstrap-20170531.tar.gz

    tar zxvf go1.4-bootstrap-20170531.tar.gz

    cd go/src/

    ./all.bash

    编译完成后,可以看到如下输出:

    ALL TESTS PASSED

    ---

    Installed Go for linux/amd64 in /home/dell/go

    Installed commands in /home/dell/go/bin

    *** You need to add /home/dell/go/bin to your PATH.

    成功编译后,将~/go/bin加入到PATH环境变量

    sudo gedit /etc/profile

    在最后一行加入  export PATH=/home/dell/go/bin:$PATH  保存

    source /etc/profile

    执行go version,检查安装

    dell@dell-VirtualBox:~/go/src$ go version

    go version go1.4-bootstrap-20170531 linux/amd64

    编译Go1.5及以上版本

    Go 1.5开始编译器和运行时用go自身编写,要编译它们,首先要安装go编译器。all.bash 编译脚本会在$GOROOT_BOOTSTRAP环境变量中查找一个已经存在的go tool chain,实际上就是要有一个编译好的bin/go程序,$GOROOT_BOOTSTRAP/bin/go应该是go二进制命令。有很多选择,可以在官网(https://golang.org/dl/)下载go发布包;也可以用go1.4源码编译,也就是按照上面的步骤编译go1.4,然后再去编译更高版本的go

    用官方下载的go1.7编译go 1.8ubuntu 16.04.2 举例:

    cd ~

    wget https://storage.googleapis.com/golang/go1.7.6.linux-amd64.tar.gz

    wget https://github.com/golang/go/archive/go1.8.3.tar.gz

    tar zxvf go1.7.6.linux-amd64.tar.gz

    tar zxvf go1.8.3.tar.gz

    export GOROOT_BOOTSTRAP=/home/dell/go

    cd go-go1.8.3/src

    ./all.bash

    编译成功后,有如下输出:

    ##### API check

    Go version is "go1.8.3", ignoring -next /home/dell/go-go1.8.3/api/next.txt

    ALL TESTS PASSED

    ---

    Installed Go for linux/amd64 in /home/dell/go-go1.8.3

    Installed commands in /home/dell/go-go1.8.3/bin

    *** You need to add /home/dell/go-go1.8.3/bin to your PATH.

    sudo gedit /etc/profile export PATH=/home/dell/go-go1.8.3/bin:$PATH 加入到文件最后一行

    执行go version 检查安装

    dell@dell-VirtualBox:~/go-go1.8.3/src$ go version

    go version go1.8.3 linux/amd64

    不管从二进制安装还是从源码安装,go就是这么简单!

  • 相关阅读:
    [leetcode]N-Queens II
    基于Linux的智能家居的设计(4)
    eclipse集成Python开发环境
    创业三年,离开公司,请各位看一下我的简历,指点一下未来的路
    Jquery实现选项卡功能
    R语言中两个数组(或向量)的外积怎样计算
    《Java程序猿面试笔试宝典》之组合与继承有什么差别
    Sublime Text3打造U盘便携Lua IDE
    php Laravel 框架之建立后台目录
    树的同构(25 分)
  • 原文地址:https://www.cnblogs.com/majianguo/p/7258975.html
Copyright © 2011-2022 走看看