目录
前言
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