最近在看一些东西,其中用到了Go语言,之前没有接触过,先在Mac下配置了 开发环境 。记录一下。

1. 安装brew

1.1 安装brew

brew,又叫是homebrew,是macOS上的一个有ruby开发的软件包管理工具,类似ubuntu上的apt-get,它可以帮你很方便的在Mac上安装或卸载软件。

可以直接在终端中复制以下命令,安装brew

/usr/bin/ruby -e "$(curl -fsSL "
 

1.2 切换brew源

安装完成,你就觉得你成功了么?那你可就图样图森破了,因为你基本上是无法更新和使用brew的,至于原因和你为什么不能看『非死不可』是一样的。但是有这么一个东西叫镜像……彻底改变了国人的生活……(扯远了)

国内的一些大学和一些机构对brew做了镜像(当然还有其他的一些镜像),我们可以通过替换brew默认源的方式来加快brew的速度。

目前我在用的是中科大的镜像,清华也有一个镜像。

在这里要说一下:brew主要分为两部分: git repo(位于GitHub)和二进制bottles(位于bintray),这两部分在国内的访问都不是很顺畅。

那如何更换呢:

  1. 替换Homebrew默认源为中科大镜像
# 替换brew.git:
cd "$(brew --repo)"
git remote set-url origin 
#替换homebrew-core.git:
cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core"
git remote set-url origin 
 
  1. 既然是镜像就有可能失效或者 宕机 ,在中科大源失效或宕机的时候可以:1.使用其他国内源镜像(git repo的镜像比较多,比如使用清华大学镜像源、coding.net镜像源)2.切换回官方源。
  2. 这里写下切换回官方源的方法:
# 重置brew.git:
cd "$(brew --repo)"
git remote set-url origin 
# 重置homebrew-core.git:
cd "$(brew --repo)/Library/Taps/homebrew/homebrew-core"
git remote set-url origin 
 
  1. 替换Homebrew Bottles源为中科大镜像
  2. 目前中科大镜像包括一些brew仓库:
  3. 对于 bash 用户:
echo 'export HOMEBREW_BOTTLE_DOMAIN= >> ~/.bash_profile
source ~/.bash_profile
 
  1. 对于 zsh 用户
echo 'export HOMEBREW_BOTTLE_DOMAIN= >> ~/.zshrc
source ~/.zshrc
 
  • 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

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:
 #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语言环境

  1. 根据提示,可以看出设置GOPATH和GOROOT的 环境变量 ,以及设置PATH
  2. 其中,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做了设置:

然后『: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』>_>

最后的成果:

## 关于作者

张小璋,公众号:张小璋的碎碎念(ID:SylvainZhang)。野蛮生长的产品经理,专注于互联网金融领域。