最近在看一些东西,其中用到了Go语言,之前没有接触过,先在Mac下配置了开发环境。记录一下。
1. 安装brew
1.1 安装brew
brew,又叫是homebrew,是macOS上的一个有ruby开发的软件包管理工具,类似ubuntu上的apt-get,它可以帮你很方便的在Mac上安装或卸载软件。
可以直接在终端中复制以下命令,安装brew
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
1.2 切换brew源
安装完成,你就觉得你成功了么?那你可就图样图森破了,因为你基本上是无法更新和使用brew的,至于原因和你为什么不能看『非死不可』是一样的。但是有这么一个东西叫镜像……彻底改变了国人的生活……(扯远了)
国内的一些大学和一些机构对brew做了镜像(当然还有其他的一些镜像),我们可以通过替换brew默认源的方式来加快brew的速度。
目前我在用的是中科大的镜像,清华也有一个镜像。
在这里要说一下:brew主要分为两部分:git repo(位于GitHub)和二进制bottles(位于bintray),这两部分在国内的访问都不是很顺畅。
那如何更换呢:
- 替换Homebrew默认源为中科大镜像
# 替换brew.git: cd "$(brew --repo)" git remote set-url origin https://mirrors.ustc.edu.cn/brew.git #替换homebrew-core.git: cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core" git remote set-url origin https://mirrors.ustc.edu.cn/homebrew-core.git
既然是镜像就有可能失效或者宕机,在中科大源失效或宕机的时候可以:1.使用其他国内源镜像(git repo的镜像比较多,比如使用清华大学镜像源、coding.net镜像源)2.切换回官方源。
这里写下切换回官方源的方法:
# 重置brew.git: cd "$(brew --repo)" git remote set-url origin https://github.com/Homebrew/brew.git # 重置homebrew-core.git: cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core" git remote set-url origin https://github.com/Homebrew/homebrew-core.git
- 替换Homebrew Bottles源为中科大镜像目前中科大镜像包括一些brew仓库:
- homebrew/homebrew-core
- homebrew/homebrew-dupes
- homebrew/homebrew-games
- homebrew/homebrew-gui
- homebrew/homebrew-python
- homebrew/homebrew-php
- homebrew/homebrew-science
- homebrew/homebrew-versions
- homebrew/homebrew-x11
对于bash用户:
echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles' >> ~/.bash_profile source ~/.bash_profile
对于zsh用户
echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles' >> ~/.zshrc source ~/.zshrc
1.3 更新brew
修改完源之后,你就需要更新下brew了
brew update
回车,即可获得最新的源上。
2. 安装Go语言环境
好,那我们就开始用brew来安装Go语言了。
brew install go
最后显示100%,并提示:
==> Pouring go-1.8.3.sierra.bottle.tar.gz
==> Using the sandbox
==> Caveats
A valid GOPATH is required to use the `go get` command.
If $GOPATH is not specified, $HOME/go will be used by default:
https://golang.org/doc/code.html#GOPATH
You may wish to add the GOROOT-based install location to your PATH:
export PATH=$PATH:/usr/local/opt/go/libexec/bin
==> Summary
🍺 /usr/local/Cellar/go/1.8.3: 7,035 files, 282.0MB
这时候就代表安装成功了,还需要完成写配置(Caveats已经提醒了)
你可以先使用
go version
看下,是否出现类似这样的显示:
go version go1.8.3 darwin/amd64
如果成功显示就代表安装成功了。(意思是本机安装的go语言版本是1.8.3 macos/64位)
3. 配置Go语言环境
- 根据提示,可以看出设置
GOPATH
和GOROOT
的环境变量,以及设置PATH - 其中,GOPATH如果未指定,默认情况地址是『$HOME/go』,也就是你的『$HOME』变量指向的地址下的go文件夹,『$HOME』变量一般是:/Users/用户名。
3.1 查看Go语言环境变量
查看go语言的环境变量设置命令:
go env
GOARCH="amd64"
GOBIN=""
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/Sylvain/go"
GORACE=""
GOROOT="/usr/local/Cellar/go/1.8.3/libexec"
GOTOOLDIR="/usr/local/Cellar/go/1.8.3/libexec/pkg/tool/darwin_amd64"
GCCGO="gccgo"
CC="clang"
GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/3b/fytpmrss5qx6x_ch0dxkxzh00000gn/T/go-build782221510=/tmp/go-build -gno-record-gcc-switches -fno-common"
CXX="clang++"
CGO_ENABLED="1"
PKG_CONFIG="pkg-config"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
3.2 修改环境变量
上边你可以看到GOPATH和GOROOT都已经有默认值了,如果需要修改的话,可以使用修改bash和zsh里的配置(有人说:二逼青年用 bash ,普通青年用 zsh ,文艺青年用 fish,我用zsh,看来我是普通青年,有空用fish装下文艺青年。)
因为我用的是zsh,所以我就说下zsh下怎么修改:
vim ~/.zshrc
将你所要改的配置填写到文件里,比如我对GOBIN做了设置:
export GOPATH=$HOME/go
export GOBIN=$GOPATH/bin
export PATH=$PATH:$GOBIN
然后『:wq』保存退出。使修改立刻生效:
source ~/.zshrc
最后在使用『go env』来确认下。这样环境变量的配置就完成了。
4. 测试运行
package main
import "fmt"
func main() {
fmt.Println("Hello, World!\n 张小璋")
}
将这个文件保存成test.go,输入命令go run test.go来测试运行下。恩,我又学会了一门语言…………的『Hello,world』>_>
最后的成果: