古老的榕树

用 Go 开发终端接口服务--环境搭建和开发工具选择

发表 2019-05-14 14:52 阅读(689)

在主流操作系统上搭建 Go 环境,其实都很简单,一般分两个步骤。以下只对最常用的 Windows 系统和 Linux 系统搭建方法做介绍。


在 Go 官网上 https://golang.google.cn/dl/   选择最新版的安装文件(截止目前最新版本是  go1.12.5)下载:

 windows 版本:https://dl.google.com/go/go1.12.5.windows-amd64.msi

 linux 版本:https://dl.google.com/go/go1.12.5.linux-amd64.tar.gz



Windows 下搭建 Go 环境

双击下载好的 go1.12.5.windows-amd64.msi 安装文件,一步步默认参数安装,最后 Go 被安装在 C 盘的根目录下。如:C:\Go。

由于Windows 下 C 盘权限问题,导致 Go 安装第三方类包失败,所以手动在非 C 分区根目录下,新建一个 GOPATH  文件夹,除了 C 盘,哪个盘区都可以,我们在 E 盘下新建它,如:E:\GOPATH。

设置系统的环境变量,打开 控制面板 > 系统和安全 > 系统 > 高级系统设置 > 环境变量 > 系统变量 

找到 Path 变量,在最后添加 C:\Go\;C:\Go\bin\;E:\GOPATH\bin; 三个值上去。

系统变量选项里找到 GOROOT 和 GOPATH 这两个变量,如果没有, 手动新建一下它们,值分别为 C:\Go\ 和 E:\GOPATH,确定新建完成。


我们在系统变量 Path 里,指定了 Go 安装路径,把 Go 和 GOPATH 的 bin 路径添加上去,再新建  GOROOT,GOPATH 两个系统变量,分别赋值完成后,最后一步是验证环境设置是否成功,cmd 打开命令提示符 ,输入 go version 和 go env 来验证:

> go version
go version go1.12.5 windows/amd64

> go env
set GOARCH=amd64
set GOBIN=
set GOCACHE=C:\Users\AppData\Local\go-build
set GOEXE=.exe
set GOFLAGS=
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOOS=windows
set GOPATH=E:\GOPATH
set GOPROXY=
set GORACE=
set GOROOT=C:\Go
set GOTMPDIR=
set GOTOOLDIR=C:\Go\pkg\tool\windows_amd64
set GCCGO=gccgo
set CC=gcc
set CXX=g++
set CGO_ENABLED=1
set GOMOD=
set CGO_CFLAGS=-g -O2
set CGO_CPPFLAGS=
set CGO_CXXFLAGS=-g -O2
set CGO_FFLAGS=-g -O2
set CGO_LDFLAGS=-g -O2
set PKG_CONFIG=pkg-config
set GOGCCFLAGS=-m64 -mthreads -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=C:\Users\Jack\AppData\Local\Temp\go-build802272070=/tmp/go-build -gno-record-gcc-switches
看到以上的版本号和详细配置,说明已经设置成功了。



Linux 下搭建 Go 环境

假如 go1.12.5.linux-amd64.tar.gz 压缩文件下载在 /home/下,我们把它挪到 /usr/local/ 目录下,并解压,然后在  /home/ 目录下再新建 GOPATH 文件夹,

# 移动到 /usr/local/ 目录下
mv /home/go1.12.5.linux-amd64.tar.gz /usr/local/
# 解压安装文件
tar -zxvf /usr/local/go1.12.5.linux-amd64.tar.gz
# home 新建 GOPATH 文件夹
mkdir /home/GOPATH


这时,你会发现 Go 的安装文件全都解压在 /usr/local/go 里面,做完以上操作后,我们知道 GOROOT、GOPATH 两个关键系统变量的路径,分别是 /usr/local/go 、/home/GOPATH,打开 profile  设置一下 

nano /etc/profile


在 profile 配置文件结尾,增加以下几行配置代码:

export GOROOT=/usr/local/go
export GOARCH=amd64
export GOOS=linux
export GOPATH=/home/GOPATH
export GOBIN=$GOROOT/bin/
export GOTOOLS=$GOROOT/pkg/tool/


然后刷新环境变量,让新配置正式生效

source /etc/profile


最后同样要验证环境变量,看看设置是否成功


# 查看 Go 的版本号
root@computer:/usr/local# go version
go version go1.12.5 linux/amd64

# 查看详细配置
root@computer:/usr/local# go env
GOARCH="amd64"
GOBIN="/usr/local/go/bin/"
GOCACHE="/root/.cache/go-build"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/GOPATH"
GORACE=""
GOROOT="/usr/local/go"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
CC="gcc"
CXX="g++"
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 -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build054573293=/tmp/go-build -gno-record-gcc-switches"
看到以上的版本号和详细配置,说明已经设置成功了。



开发工具的选择

Sublime Text 3:工具很轻量,而且启动很快,所以推荐在 Windows 下使用它来开发 Go 项目。它的下载地址为: https://www.sublimetext.com/ 下载后,双击安装文件,一步步默认参数安装即可。安装 Sublime Text 3  完成后,还需要安装 GoSublime 插件包,来支持 Go 。
安装 GoSublime 插件包:打开 Sublime Text 3,快捷键 ctrl+shift+p 输入框输入 install package 调出 Package Control:Install Package 安装插件输入框 ,再输入 GoSublime ,选中它按 Enter 回车,它自动到插件库官网下载GoSublime 安装 。

Visual Studio Code:是微软开发的全能的开发工具,它是免费开源的,更重要的是开发团队非常活跃,更新及时,还跨平台,不少行内人都推荐使用,你可以去体验一下。
它的下载地址为:https://code.visualstudio.com/ ,下载后双击安装文件,一步步默认参数安装即可。同样,工具安装完毕后,还需要安装一些插件来支持 Go 的,不过 Visual Studio Code 比较智能,你只要打开一个 Go 文件或项目,它就会自动提示你需要安装哪些插件了。总之,如果你喜欢它,只管安装试试看吧。

Goland:JetBrains 公司出的重量级的 IDE,它适合团队协助开发。完整的体系和精致的功能对源码质量提供更有力的保证。好东西都是耗费人力和物力的。所以 Goland 是一款收费的产品,如果你条件允许,请支持正版好软件好工具,给开发者带去更多的鼓励。  下载地址:https://www.jetbrains.com/go/download/

LiteIDE:是一款简单,开源,跨平台的 Go 语言 IDE。国人用 C++ 专门给 Go 开发的 IDE ,作者十年如一日,一人一直默默耕耘,工具也越趋完善,界面质朴实用,性能出众,用 LiteIDE 开发项目是不错的选择。作者的精神是值得我们国人赞赏的,LiteIDE 的发展离不开大家的鼓励和支持。

以上列出自己都尝试用过的四款开发工具,用的时长不一样,评价也只是个人的主观感受,并不是客观的事实,希望大家了解。简单说说个人对它们的使用感受吧:Sublime Text 3 轻量,速度快,极低内存占用,低 CPU 要求;Visual Studio Code 支持的语言多,功能丰富,社区活跃,中等内存占用,中等 CPU 要求; Goland 可靠稳定,用户体验好,功能完善,智能关联,适合团队协作,中高内存占用,中高 CPU 要求;LiteIDE 性能好,功能丰富,语言支持专一,极低内存占用,低 CPU 要求。

命令行工具的选择
如果你是在 Windows 下开发,运行命令很常用,如果你觉得 cmd 不是很好用,建议试试 cmder 这个第三方工具,可能它更方便一些,它支持代码着色,tab 自动补全,用多了效率可以提高不少。下载地址为:http://cmder.net

Go 环境搭建好了,工具也就绪了,还需要全局安装两个类包 dep 和 gin, dep 和 Maven 类似的,它可以对 Go 的第三方类包进行包管理和关系依赖;gin 是自动热编译工具,项目一旦有代码变动,它都会检查错误、自动编译、生成可执行包。这两个类包,都安装在 GOPATH 中,安装命令如下:

go get -u -v github.com/golang/dep github.com/codegangsta/gin

这两个类包和其他类包是不一样的,它在项目之上,协助和管理项目用途的,不是业务类包,所以需要全局安装到 GOPATH 里。

下面说明 go get 指令的使用方法,指令加上-v 表示同时打印安装日志 ,如:go get -v packageName 第一次安装第三方类库到 GOPATH,并打印安装日志,而加上 -u 的时候,如: go get -u -v packageName  是安装最新版本的类包,可能以前已经安装过,这次就是更新到最新的版本安装;如果以前没有安装过,这次同样找最新的版本来全新安装。

类包可以一个个顺序安装,如以下命令:
go get -v github.com/golang/dep
go get -v github.com/codegangsta/gin
go get -v github.com/urfave/negroni


也可以一次性同时安装多个类包,包与包之间空格隔开,比如:
go get -v github.com/golang/dep  github.com/codegangsta/gin  github.com/urfave/negroni 

注意安装完成后,文件都存在 GOPATH 里。这个和 dep 安装有点区别,go get 是全局的安装,只有全局使用的类包才这么安装,比如 dep,gin 我们需要全局的安装,其他业务类包推荐使用 dep 方式安装。


**小结**

由此可总结,不同的操作系统上安装 Go 环境,都是大同小异的。先是默认安装(解压) Go 文件,最后配置系统环境变量 (指定 GOROOT GOPATH 的路径)。

**注意:** 在没有特别说明的情况下,本系列教程都是在 Windows 系统下开发代码,在 Linux(Debian)服务器上部署程序。




《用 Go 开发终端接口服务》 目录



Donate

如果文章对您有帮助,请使用手机支付宝扫描二维码,捐赠X元,作者离不开读者的支持!