# 安裝Golang
> 本章節將介紹在Linux和Windows平臺下安裝配置Golang環境
國內軟件包下載地址:
1. [golang谷歌中國官網](https://golang.google.cn/dl/)
2. [studygolang](https://studygolang.com/dl)
## 在Linux下安裝Golang環境
> 下載Golang二進制安裝包 當前版本為 `go1.10.1.linux-amd64.tar.gz`
> 解壓到/usr/local目錄下 (確保用戶有寫權限)
```bash
sudo tar zvxf go1.10.1.linux-amd64.tar.gz -C /usr/local
```
> 配置環境變量,將個人工作目錄設立在家目錄下go文件夾下面,將其配置成GOPATH
vim ~/.bashrc
```bash
export GOROOT=/usr/local/go #go安裝路徑
export GOBIN=$GOROOT/bin #go可執行程序文件路徑
export GOPATH=$HOME/go #GOPATH 請自定義
export GOPBIN=$GOPATH/bin #編譯安裝程序目錄
export PATH=$PATH:$GOPBIN:$GOBIN
```
> 使配置生效
```bash
source ~/.bashrc
```
> 查看環境信息
```bash
$ go env
GOARCH="amd64"
GOBIN="/usr/local/go/bin"
GOCACHE="/home/xuthus/.cache/go-build"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/xuthus/go"
GORACE=""
GOROOT="/usr/local/go"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build322796997=/tmp/go-build -gno-record-gcc-switches"
```
## Windows下Golang環境配置
> 下載安裝包 `go1.10.3.windows-amd64.msi` 執行安裝
> 默認安裝位置為` C:\Go` ,選擇默認參數安裝后,安裝程序已經自動創建全局環境變量 ` GOROOT=C:\Go` ,自動在` PATH` 里面回添加了 `C:\Go\bin` 并且在 **用戶變量** 里添加了 `GOPATH=C:\Users\username\go` 路徑 我們只要要將其GOPATH改成我們所需要的,并將 `GOPATH/bin` 添加 ` PATH` 即可。如果你自定義安裝位置,你需要手動添加這些選項
> 我們的工作目錄在 `D:\GO` 下 將其設為 `GOPATH` 并將 `D:\GO\bin` 添加至 `PATH`
> 快捷鍵` win+r ` 輸入` cmd ` 在命令提示符下輸入 `go env` 查看輸出
```bash
C:\Users\xuthu>go env
set GOARCH=amd64
set GOBIN=
set GOCACHE=C:\Users\xuthu\AppData\Local\go-build
set GOEXE=.exe
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOOS=windows
set GOPATH=D:\GO
set GORACE=
set GOROOT=C:\Go
set GOTMPDIR=
set GOTOOLDIR=C:\Go\pkg\tool\windows_amd64
set GCCGO=gccgo
set CC=gcc
set CXX=g++
set CGO_ENABLED=1
set CGO_CFLAGS=-g -O2
set CGO_CPPFLAGS=
set CGO_CXXFLAGS=-g -O2
set CGO_FFLAGS=-g -O2
set CGO_LDFLAGS=-g -O2
set PKG_CONFIG=pkg-config
set GOGCCFLAGS=-m64 -mthreads -fmessage-length=0 -fdebug-prefix-map=C:\Users\xuthu\AppData\Local\Temp\go-build757079398=/tmp/go-build -gno-record-gcc-switches
```