一、通过Homebrew安装Golang,配置Golang
安装Homebrew
Homebrew官网安装方法:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
安装Golang
brew install go
为Golang配置环境变量
创建目录
在文稿(Documents)目录下穿件一个目录(go)作为GOPATH,在GOPATH的目录下新建src、bin两个目录了。这两个目录的用途如下:
1、 src:存放源代码;
2、 bin:存放编译后生成的可执行文件;
配置全局变量
1、打开终端输入cd ~进入用户主目录;
2、输入ls -all命令查看是否存在.bash_profile;
3、存在既使用vim .bash_profile 打开文件;
4、输入 i 进入vim编辑模式;
5、输入下面代码, 其中 GOPATH: 日常开发的根目录。GOBIN:是GOPATH下的bin目录。
export GOPATH=/Users/自己的用户目录(lwtz)/go
export GOBIN=$GOPATH/bin
export PATH=$PATH:$GOBIN
6、点击ESC,并输入 :wq 保存并退出编辑。可输入vim .bash_profile 查看是否保存成功;
7、输入source ~/.bash_profile 完成对golang环境变量的配置,配置成功没有提示。
8、输入go env 查看配置结果:
GOARCH="amd64"
GOBIN="/Users/lwtz/Documents/go/bin"
GOCACHE="/Users/lwtz/Library/Caches/go-build"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/lwtz/Documents/go"
GORACE=""
GOROOT="/usr/local/Cellar/go/1.10.2/libexec"
GOTMPDIR=""
GOTOOLDIR="/usr/local/Cellar/go/1.10.2/libexec/pkg/tool/darwin_amd64"
GCCGO="gccgo"
CC="clang"
CXX="clang++"
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 -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/sc/kxtrgn491415m5qjj5ly5s_m0000gn/T/go-build011763803=/tmp/go-build -gno-record-gcc-switches -fno-common"
二、搭建开发工具
到Atom官网下载Atom macOS的安装包并安装
安装go-plus
在Atom中的Preference中可以找到install菜单,输入go-plus,点击Packages
点击:install,就会开始安装go-plus,我的已经安装过了就变成Uninstall了。
安装atom-terminal-panel插件
go-plus没有提供编译工具,可以在命令行中直接运行go程序,需要安装atom-terminal-panel,在install中直接输入atom-terminal-panel安装。
直接使用快捷键control+`就可以呼出terminal。
当然也可以在macOS系统的终端上编译
三、第一个程序:HelloWorld
在src目录下新建helloworld目录,类似于一个project的名称吧,在helloworld目录下新建helloworld.go文件,在文件中输入下面的代码:
package main
import "fmt"
func main() {
fmt.Println("Hello world")
}
在终端切换到helloworld目录,执行命令行go run helloworld.go
输出
192:~ lwtz$ cd /Users/lwtz/Documents/go/src/helloworld
192:helloworld lwtz$ go run helloworld.go
Hello world
192:helloworld lwtz$