下载地址(官网):
https://golang.org/dl/

下载地址(国内):
https://dl.gocn.io/

想编译GO,必须先有一个GO的编译器。

创建GO的编译器:
[root@node2 ~]# mkdir local
[root@node2 ~]# cd local
[root@node2 local]# curl -LO https://dl.google.com/go/go1.4.3.src.tar.gz
[root@node2 local]# tar xvf go1.4.3.src.tar.gz
[root@node2 local]# mv go go1.4.3
[root@node2 local]# cd go1.4.3/
[root@node2 go1.4.3]# cd src/
[root@node2 src]# ./make.bash
[root@node2 go1.4.3]# bin/go version
go version go1.4.3 linux/amd64

安装GO软件:
[root@node2 local]# tar xf go1.10.3.src.tar.gz
[root@node2 local]# ls
go go1.10.3.src.tar.gz go1.4.3 go1.4.3.src.tar.gz

[root@node2 local]# mv go go1.10

[root@node2 go1.10]# cd src/

[root@node2 src]# ./make.bash
Building Go cmd/dist using /root/go1.4.
ERROR: Cannot find /root/go1.4/bin/go.
Set $GOROOT_BOOTSTRAP to a working Go tree >= Go 1.4.

需要设置1.4版本的环境变量

[root@node2 src]# export GOROOT_BOOTSTRAP=/root/local/go1.4.3
[root@node2 src]# ./make.bash

[root@node2 go1.10]# bin/go version
go version go1.10.3 linux/amd64
[root@node2 local]# mv go1.10 go

初始化环境
GOROOT 放置go的标准库和工具链
$HOME/local/go (linux, mac)
c:\local\go (windows)

GOPATH 放置第三方代码和自己的工程
$HOME/go (linux, mac)
c:\go (windows)

PATH
export PATH=$GOROOT/bin:$GOPATH/bin:$PATH

[root@node2 ~]# vim ~/.bashrc
export GOROOT=/root/local/go
export GOPATH=/root/go
export PATH=$GOROOT/bin:$GOPATH/bin:$PATH

测试一个Hello World
[root@node2 go]# vim hello.go
package main

import "fmt"

func main() {
  fmt.Println("hello golang")
}

[root@node2 go]# go run hello.go
hello golang

编译运行
go build hello.go && ./hello # 编译成.exe的文件,在Windows中执行。直接编译成可执行文件。在Linux中也可以直接运行 ./hello
go run hello.go #在linux中执行执行该文件

[root@node2 go]# go build hello.go
[root@node2 go]# file hello
hello: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), statically linked, not stripped
[root@node2 go]# ./hello
hello golang

mac系统把程序编程成Linux系统的程序:
[root@node2 go]# GOOS=linux go build hello.go 变成linux
[root@node2 go]# GOOS=windows go build hello.go 变成windows
[root@node2 go]# GOOS=darwin go build hello.go 变成mac

[root@node2 go]# GOOS=linux go build -o hello.linux hello.go
[root@node2 go]# GOOS=linux go build -o hello.lin hello.go
[root@node2 go]# GOOS=windows go build -o hello.exe hello.go
[root@node2 go]# GOOS=darwin go build -o hello.mac hello.go

安装go版本的更多相关文章

  1. 如何为eclipse安装合适版本的python插件pydev

    pydev是一款优秀的Eclipse插件,大多数喜欢在eclipse开发软件的程序员(也许是java程序员)在开发python软件时希望继续使用eclipse,那么pydev是非常理想的选择. 1.安 ...

  2. ubuntu14.04下配置Java环境以及安装最新版本的eclipse

    首先是配置JDK 步骤一:下载最新版本的JDK,链接:http://www.oracle.com/technetwork/java/javase/downloads/index.html 步骤二:首先 ...

  3. Python 基础之在ubuntu系统下安装双版本python

    前言:随着python升级更新,新版本较于老版本功能点也有不同地方,作为一个初学者应该了解旧版本的规则,也要继续学习新版本的知识.为了能更好去学习python,我在ubuntu安装python2和py ...

  4. 在树莓派(Raspberry Pi)上编译安装更新版本的Python

    Raspiban Wheezy上预装的Python3版本是3.2.3,本文将介绍升级到3.4.3的方法. 此文也适用于安装其它版本(比如最新版本)的Python. 我用的是B+型的树莓派,装的系统是2 ...

  5. 安装指定版本的cordova

    安装指定版本的cordova 刚接触cordova看到教程肯定是直接 npm install -g cordova 然后下载个集成的adt 以为万事大吉,开始hello world 玩玩没有想到最新的 ...

  6. yum安装高版本mysql(5.5)

    1.导入第三方源webtatic rpm -Uvh http://repo.webtatic.com/yum/centos/5/latest.rpm 2.如果已安装低版本的mysql就删除 yum r ...

  7. 如何安装最新版本的memcached

    转载自孟叔的博客:  https://learndevops.cn/index.php/2016/06/10/how-to-install-the-latest-version-of-memcache ...

  8. ppa安装php版本

    如果你想安装PHP的特定版本,那么这篇文章可以帮助你.这篇文章将帮助您安装PHP 5.4和PHP 5.5 PHP 5.6,通过使用PPA在Ubuntu 15.10 LTS,14.04或12.04 LT ...

  9. python开发学习-day01 (python安装与版本、字符串、字典、运算符、文件)

    *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* ...

  10. Linux环境Nginx安装多版本PHP

    php5.4.44 所谓多版本多版本PHP就是php5.4和5.5以及其他版本在同一台服务器. 假如php5.5是主版本已经安装在/usr/local/php目录下,那么再安装其他版本的php再指定不 ...

随机推荐

  1. C++11常用特性总结

    非原创,转载出处 http://www.cnblogs.com/feng-sc C++11已经出来很久了,网上也早有很多优秀的C++11新特性的总结文章,在编写本博客之前,博主在工作和学习中学到的关于 ...

  2. DAG

    DAG的生成 DAG(Directed Acyclic Graph) 叫做有向无环图,原始的RDD通过一系列的转换就形成了DAG,根据RDD之间的依赖关系的不同将DAG划分成不同的Stage,对于窄依 ...

  3. WannaCry的UWP版,哈哈哈

  4. h5与app交互

    现在移动端 web 应用,很多时候都需要与原生 app 进行交互.沟通(运行在 webview中),比如微信的 jssdk,通过 window.wx 对象调用一些原生 app 的功能.所以,这次就来捋 ...

  5. ASE Alpha Sprint - backend scrum 2

    本次scrum于2019.11.5再sky garden进行,持续30分钟. 参与人: Zhikai Chen, Jia Ning, Haifeng Chen, Hao Wang 请假: Xin Ka ...

  6. Tomcat部署虚拟主机

    使用Tomcat部署加密虚拟主机,实现: a.使用www.a.com域名访问的页面根路径为/usr/local/tomcat/a/base b.使用www.b.com域名访问的页面根路径为/usr/l ...

  7. python基础--匿名函数

    def calc(x): return x+1 a=calc(10) print(calc) print(lambda x:x+1)#lambda函数的内存地址,利用函数名可以作为值传递给变量 b=l ...

  8. Linux 普通用户自动修改密码

    在大量服务器运维中,维护服务器账号就让人头痛,对账号密码策略要求,现写了一个shell脚本来完成账号密码的修改,当然这个不是最好的方法,只是在没有其它辅助服务时使用,最好还是使用账户统一管理服务来维护 ...

  9. [python 学习] python 多线程

    1. # -*- coding: utf-8 -*- import threading import time import random def go(name): for i in range(2 ...

  10. Xcode编辑器之filter查找功能和查看最近修改的文件

    一,前言 有时候,我们的项目过大,创建类过多就会造成“目标文件”不好查找.这时候通过“filter”进行目录结构筛选无疑是最好的选择. 二,什么是filiter filiter 顾名思义为“过滤”,“ ...