首页
技术小册
AIGC
面试刷题
技术文章
MAGENTO
云计算
视频课程
源码下载
PDF书籍
「涨薪秘籍」
登录
注册
Go安装
目录结构
Go 命令
依赖管理(dep)
Go 各版本特性
Go 调试工具Delve
性能测试工具PProf
单元测试和性能测试
GO 依赖管理工具 go Modules
Hello World!
数组
切片(slice)
map
结构体(struct)
常量和变量
流程控制
Go 反射reflect
Go 双向链表
Go 指针
new和make的区别
定时器NewTimer、NewTicker 和time.After
Golang 类型
Go 之 interface接口理解
判断数据类型
数据类型转换
json 处理
Go 字符串处理
GO 正则表达式
Go 中文和unicode字符之间转换
自定义包(package)
import
模板(text/template)
golang之JWT实现
go-sql-driver/mysql
Go语言 orm库
Go之web框架gin
Golang之rpc框架rpcx
Golang之微服务http框架hertz
当前位置:
首页>>
技术小册>>
Go开发权威指南(上)
小册名称:Go开发权威指南(上)
Go提供了方便的安装包,支持Windows、Linux、Mac等系统。这里只介绍Linux(以下以**centos7**为例)和windows系统下安装方法。**在安装和使用过程中需要掌握科学上网**。 **Linux 下安装** Linux安装有二进制包安装,和yum 方式安装。 二进制源码安装: 1、Go语言的开发包可以在以下站点下载: - [Golang](http://c.biancheng.net/golang/) 中国,网址为:https://www.golangtc.com/download - Go 语言官方网站,网址为:https://go.dev/dl/ - GO语言中文网 https://studygolang.com/dl | File name | Kind | OS | Arch | Size | SHA256 Checksum | | ------------------------------------------------------------ | --------- | ------- | ------- | ----- | ------------------------------------------------------------ | | [go1.11.2.src.tar.gz](https://dl.google.com/go/go1.11.2.src.tar.gz) | Source | | | 20MB | `042fba357210816160341f1002440550e952eb12678f7c9e7e9d389437942550` | | [go1.11.2.darwin-amd64.tar.gz](https://dl.google.com/go/go1.11.2.darwin-amd64.tar.gz) | Archive | macOS | x86-64 | 118MB | `be2a9382ef85792280951a78e789e8891ddb1df4ac718cd241ea9d977c85c683` | | [go1.11.2.darwin-amd64.pkg](https://dl.google.com/go/go1.11.2.darwin-amd64.pkg) | Installer | macOS | x86-64 | 117MB | `1cb34dffecb3c3d441667954bab5b7fdb048c40704b76cd801f09796b909ff50` | | [go1.11.2.linux-386.tar.gz](https://dl.google.com/go/go1.11.2.linux-386.tar.gz) | Archive | Linux | x86 | 105MB | `e74f2f37b43b9b1bcf18008a11e0efb8921b41dff399a4f48ac09a4f25729881` | | [go1.11.2.linux-amd64.tar.gz](https://dl.google.com/go/go1.11.2.linux-amd64.tar.gz) | Archive | Linux | x86-64 | 121MB | `1dfe664fa3d8ad714bbd15a36627992effd150ddabd7523931f077b3926d736d` | | [go1.11.2.linux-armv6l.tar.gz](https://dl.google.com/go/go1.11.2.linux-armv6l.tar.gz) | Archive | Linux | ARMv6 | 96MB | `b9d16a8eb1f7b8fdadd27232f6300aa8b4427e5e4cb148c4be4089db8fb56429` | | [go1.11.2.windows-386.zip](https://dl.google.com/go/go1.11.2.windows-386.zip) | Archive | Windows | x86 | 111MB | `c0c5ab568d9cf260cd7d281e0a489ef91f4b943813d99dac78b61607dca17283` | | [go1.11.2.windows-386.msi](https://dl.google.com/go/go1.11.2.windows-386.msi) | Installer | Windows | x86 | 96MB | `56dc82a16747be3b94213cd53a059437462437bc67a087552111324d3f64877a` | | [go1.11.2.windows-amd64.zip](https://dl.google.com/go/go1.11.2.windows-amd64.zip) | Archive | Windows | x86-64 | 128MB | `086c59df0dce54d88f30edd50160393deceb27e73b8d6b46b9ee3f88b0c02e28` | | [go1.11.2.windows-amd64.msi](https://dl.google.com/go/go1.11.2.windows-amd64.msi) | Installer | Windows | x86-64 | 111MB | `74e0221315bb79c45080cd0c81bbe046ab2a21bea808fa5e2d119f3a07815218` | | Other Ports | | | | | | | [go1.11.2.freebsd-386.tar.gz](https://dl.google.com/go/go1.11.2.freebsd-386.tar.gz) | Archive | FreeBSD | x86 | 99MB | `7daf8c1995e6eb343c4b487ba4d6b8fb5463cdead8a8bde867a25cc7168ff77b` | | [go1.11.2.freebsd-amd64.tar.gz](https://dl.google.com/go/go1.11.2.freebsd-amd64.tar.gz) | Archive | FreeBSD | x86-64 | 119MB | `a0b46726b102067bdd9a9b863f2bce4d23e4478118162bb9b2362733eb28cabf` | | [go1.11.2.linux-arm64.tar.gz](https://dl.google.com/go/go1.11.2.linux-arm64.tar.gz) | Archive | Linux | ARMv8 | 95MB | `98a42b9b8d3bacbcc6351a1e39af52eff582d0bc3ac804cd5a97ce497dd84026` | | [go1.11.2.linux-ppc64le.tar.gz](https://dl.google.com/go/go1.11.2.linux-ppc64le.tar.gz) | Archive | Linux | ppc64le | 94MB | `23291935a299fdfde4b6a988ce3faa0c7a498aab6d56bbafbf1e7476468529a3` | | [go1.11.2.linux-s390x.tar.gz](https://dl.google.com/go/go1.11.2.linux-s390x.tar.gz) | Archive | Linux | s390x | 95MB | `a67ef820ef8cfecc8d68c69dd5bf513aaf647c09b6605570af425bf5fe8a32f0` | 2、下载go1.11.2.linux-amd64.tar.gz 到/usr/local 目录 解压 ``` $ tar -zxvf go1.11.2.linux-amd64.tar.gz ``` 3、配置环境变量,打开 /etc/profile,添加 ``` export GOROOT=/usr/local/go export PATH=$PATH:$GOROOT/bin ``` 然后执行 source /etc/profile 使之生效 其中GOROOT环境变量表示我们GO的安装目录,这样其他软件比如我们使用的Go开发IDE就可以自动的找到我们的Go安装目录,达到自动配置Go SDK的目的。 第二句配置是把`/usr/local/go/bin`这个目录加入到环境变量PATH里,这样我可以在终端里直接输入go等常用命令使用了,而不用再加上`/usr/local/go/bin`这一串绝对路径,更简洁方便。 4、通过 go version 可以查看版本信息 go env 查看环境配置信息 **版本升级** 升级也很简单,先删除go安装文件目录(rm /usr/local/go -rf),再重复 2步骤,下载最新版的安装文件,就可以了。 **通过yum安装** 这种方式更简便。 1、安装yum 源 ``` yum install epel -y ``` 2、然后使用 yum 安装 Golang: ``` yum install go -y ``` 查看版本 go version 3、配置环境变量 在 /etc/profile 添加: ``` export GOPATH=/home/go export PATH=$PATH:$GOPATH/bin ``` 然后执行 source /etc/profile 使之生效,创建GOPATH目录 ``` mkdir /home/go ``` **windows下安装** 参考https://blog.csdn.net/guyan0319/article/details/78956957 安装步骤如下: **1、下载程序安装包:** 安装程序 下载地址:https://golang.org/dl/ ( 墙内下载地址http://www.golangtc.com/download ), 由于Windows下的的安装包有两种:msi和zip的;zip的是免安装的,解压在配置一些环境变量之后就可以使用,msi的则是安装包版本的,安装的时候会设置好对应的环境变量。我的系统是win7, 64位,为了方便,我选择的是go1.9.2.windows-amd64.msi,其他的,请按照自己所需版本来进行下载; ![](/uploads/images/20231219/24dc4e91e381cf082d687e8cfdb09f6e.png) **2、安装及环境配置** 安装过程简单,一路“next”即可,也可以定义 安装目录,msi会自动配置一些环境变量,你也可自己配置环境变量,配置完检查环境变量是否正确。 主要的环境变量有以下几个: GOROOT:Go的安装目录 GOPATH:用于存放Go语言Package的目录,这个目录不能在Go的安装目录中 GOBIN:Go二进制文件存放目录,写成%GOROOT%\bin就好 GOOS:操作系统 GOARCH:指定系统环境,i386表示x86,amd64表示x64 PATH:需要将%GOBIN%加在PATH变量的最后,方便在命令行下运行Go 需要注意的是go 命令依赖一个重要的环境变量:$GOPATH,在go 1.8以前,此环境变量需要用户必须进行设置。但是在go 1.8版本以后,在没有设置情况下,会有一个默认值。 其在Unix/Linux/macOS下是:$HOME/go这个目录,在Windows下是:%USERPROFILE%/go这个目录。 这里我的配置$GOPATH: D:\data 配置环境变量,“计算机”-“属性”-“高级系统设置”-“环境变量” ![](/uploads/images/20231219/d0c71b7d082ba0fdfe47112488e26379.png) 完成之后在cmd窗口输入:go version ![](/uploads/images/20231219/31815546970f2a9fbde19ed8d0022602.png) **3、环境搭建完成,安装开发工具,这里推荐LiteIDE.** 下载地址:https://sourceforge.net/projects/liteide/files/ 选择最新版 ![](/uploads/images/20231219/34090d98a245a67d8c0a4affc0b7252a.png) 下载压缩包并解压至c:\盘即可,安装完成之后,打开应用程序,“工具”-->"编辑当前环境",确认GOROOT变量与GO安装路径一致: ![](/uploads/images/20231219/c68cf8319bb51773afb46a02c4a3752a.png) “工具”-->"管理GOPATH" ![](/uploads/images/20231219/66523fc005fd9f58f65381d1aa486a48.png) **4、新建个小项目** ![](/uploads/images/20231219/3bf5b1b7cefd4949e607afe4be0c3363.png) **5、运行结果** 用快捷键“ctrl+r” ![](/uploads/images/20231219/3d3d4a1b3157f2ca89838c2d38b8ed58.png) 这样GO的开发环境全部搭建完成! 一般 `$GOPATH` 目录约定有三个子目录: 1.src 存放源代码(比如:.go .c .h .s等); 2.pkg 编译后生成的文件(比如:.a); 3.bin 编译后生成的可执行文件(为了方便,可以把此目录加入到 $PATH 变量中); bin和pkg目录可以不创建,go命令会自动创建(如 go install),只需要创建src目录即可。 **安装官方包** 由于众所周知的原因golang.org/x/目录下的包(net、sys、text等)无法go get直接下载,这里提供一些解决办法 ``` mkdir -p $GOPATH/src/golang.org/x cd $GOPATH/src/golang.org/x git clone https://github.com/golang/net.git --depth 1 git clone https://github.com/golang/text.git --depth 1 git clone https://github.com/golang/sys.git --depth 1 git clone https://github.com/golang/crypto.git --depth 1 git clone https://github.com/golang/oauth2.git --depth 1 ``` 命令解析: 其中--depth=1 这个参数的意思是只克隆最新的commit分支。不加也行。 **注意:**前提是先安装git,这里就不再介绍git的安装方法了。 以上有什么不足之处,或建议欢迎大家批评指正。
下一篇:
目录结构
该分类下的相关小册推荐:
深入浅出Go语言核心编程(四)
深入浅出Go语言核心编程(八)
深入浅出Go语言核心编程(七)
Go语言入门实战经典
WebRTC音视频开发实战
Go Web编程(上)
Go开发基础入门
go编程权威指南(四)
深入浅出Go语言核心编程(一)
go编程权威指南(二)
Go-Web编程实战
从零写一个基于go语言的Web框架