目錄
前言
Mac中可以通過brew命令來安裝go。
brew的安裝
如果Mac中沒有brew命令,可以按如下步驟安裝:
- 訪問brew官網:https://brew.sh
- 按照官網指引去安裝(在mac終端中運行這句話,就安裝了):
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
go環境安裝
- 查詢是否系統中已安裝go,如下爲未安裝:
$ go version
-bash: go: command not found
- 安裝命令:
$ go version
go version go1.13.5 darwin/amd64
- 安裝成功後,可查看版本信息:
可查看環境變量,安裝後尚未設置環境變量時顯示如下:
$ go env
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/YOUR_NAME/Library/Caches/go-build"
GOENV="/Users/YOUR_NAME/Library/Application Support/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GONOPROXY=""
GONOSUMDB=""
GOOS="darwin"
GOPATH="/Users/YOUR_NAME/go"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/local/Cellar/go/1.13.5/libexec"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/Cellar/go/1.13.5/libexec/pkg/tool/darwin_amd64"
GCCGO="gccgo"
AR="ar"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD=""
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 -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/vr/3c8gpkw970s97f3p8ry1cdxng0dj1y/T/go-build992429160=/tmp/go-build -gno-record-gcc-switches -fno-common"
go的運行
安裝過後,嘗試運行一下go語言的程序腳本。
- 編寫一段Hello World : )
$ vi hello.go
內容如下:
// You can edit this code!
// Click here and start typing.
package main
import "fmt"
func main() {
fmt.Println("Hello, 世界\n")
}
- 運行這個hello.go腳本
$ go run hello.go
Hello, 世界
其他
- 環境變量
查看一下當前未設置的go環境變量,會發現brew已經自動設置了一部分,已經可以直接運行go程序了,如果遇到問題再補充這部分配置。
附基本配置方法:
$ vi ~/.bash_profile
export GOROOT=/usr/local/go
export GOPATH=/Users/YOUR_NAME/Documents/Go
export GOBIN=$GOROOT/bin
export PATH=$PATH:$GOBIN
其中各配置含義:
GOPATH:你編寫代碼存放的目錄,自定義設置
GOROOT:go安裝的路徑
$ source ~/.bash_profile
- 本地編譯和運行的區別
1. 只看執行結果:對含main函數的源碼文件做 [編譯+鏈接] , 生成臨時的可執行程序並執行,一般用於調試程序。
這個生成的可執行文件,要想在其他機器上運行,其他機器也需要安裝go環境。
$ go run
2. 編譯並執行:對源碼文件做[編譯檢查],用於測試編譯是否有問題。
編譯不含main函數的文件,不產生文件;編譯含main函數的文件,生成可執行文件。
這個生成的可執行文件,在其他機器上也可直接運行,其他機器不需要安裝go環境。
$ go build
編譯單個文件:
$ go build .\xx\xx.go
編譯文件夾:
$ go build .\xx\xx
3. 構建安裝包:先編譯import的包文件,所有import都編譯完纔會編譯主程序。編譯後,生成的可執行文件在bin下,包文件在pkg下。
安裝不含main函數的文件,[編譯+鏈接]整個包,pkg目錄下生成.a靜態文件,供其他包調用。
安裝含main函數的文件,[編譯+鏈接],bin目錄下生成可執行文件。
$ go install