Golang学习笔记(一)-Go语言环境安装以及运行代码

摘要:
在Windows下,默认情况下,Go语言开发工具包将安装在C盘的Go目录中。建议安装在此目录中,这样使用起来更方便。安装完成后,将在我们设置的安装目录下生成一些目录和文件,如下图所示:此目录的结构遵循GOPATH规则,这将在以下章节中提及。GOPATH是用于存储开发中所需的代码包的路径。其他环境变量将自动设置。
Linux安装

Golang官网下载地址:https://golang.org/dl/

1、下载安装包

2、解压至 /usr/local 目录

tar -C /usr/local -zxvf go1.11.5.linux-amd64.tar.gz

3、添加 /usr/loacl/go/bin 目录到PATH变量中。添加到/ etc/profile 或 $HOME/.profile 都可以

vim /etc/profile

export GOROOT="/usr/local/go"
export GOPATH="/root/go"
export GOBIN="/root/go/bin" 
export PATH="$PATH:$GOROOT/bin:$GOBIN"

export GO111MODULE="on"
export GOPROXY="https://goproxy.cn,direct"
export GONOPROXY="*git.example.com"
export GONOSUMDB="*git.example.com"

source /etc/profile
代码运行

编写go代码

[root@VM-0-6-centos go]# tree
.
|-- bin
|-- pkg
`-- src
    |-- test_demo        // test_demo项目是输出二进制文件
    |   `-- app.go
    `-- utils
        `-- add.go      // utils项目是输出包

方式 1:go run

进入代码目录
go run app.go

方式 2:go build(推荐)

进入代码目录
​
//编译代码,在当前目录生成一个可执行文件
go build            // 默认生成的可执行文件名称与工程名称相同
//运行
./test_demo
​
go build -o xxx     // -o 指定生成二进制文件的名称

GO程序员的项目:

  • 产出一个可执行文件

  • 产出一个包

方式 3:go install

1) "$GOPATH/bin"目录,生成可执行文件

[root@VM-0-6-centos test_demo]# cat app.go 
package main
​
import(
    "fmt"
)
​
func main(){
    fmt.Println("hello,main")
}
进入test_demo代码目录
//执行go install编译代码,"$GOPATH/bin"目录,生成可执行文件
go install
​
结果:
[root@VM-0-6-centos go]# tree
.
|-- bin
|   `-- test_demo      // 产出可执行文件
|-- pkg
`-- src
    |-- test_demo
    |   `-- app.go
    `-- utils
        `-- add.go
 

2) "$GOPATH/pkg"目录,生成utils的包文件

[root@VM-0-6-centos utils]# cat add.go 
package utils
​
func Add(a,b int)int{
    return a+b
}
进入utils代码目录
//执行go install编译代码,"$GOPATH/pkg"目录,生成utils.a包文件
go install
​
结果:
[root@VM-0-6-centos go]# tree
.
|-- bin
|   `-- test_demo
|-- pkg
|   `-- linux_amd64
|       `-- utils.a        // 产出文件包
`-- src
    |-- test_demo
    |   `-- app.go
    `-- utils
        `-- add.go
​
Windows环境

下载Go语言开发包

大家可以在Go语言官网(https://golang.google.cn/dl/)下载 Windows 系统下的Go语言开发包,如下图所示。

Golang学习笔记(一)-Go语言环境安装以及运行代码第1张

这里我们下载的是 64 位的开发包,如果读者的电脑是 32 位系统的话,则需要下载 32 位的开发包,在上图所示页面中向下滚动即可找到 32 位开发包的下载地址,如下图所示。

Golang学习笔记(一)-Go语言环境安装以及运行代码第2张

注意:下载 Windows 版本的Go语言开发包时尽量选择 MSI 格式,因为它可以直接安装到系统,不需要额外的操作。

安装Go语言开发包

双击我们下载好的Go语言开发包即可启动安装程序,如下图所示,这是Go语言的用户许可协议,无需管它,直接勾选“I accept ...”然后点击“Next”即可。

Golang学习笔记(一)-Go语言环境安装以及运行代码第3张

在 Windows 系统下Go语言开发包会默认安装到 C 盘的 Go 目录下,推荐在这个目录下安装,使用起来较为方便。当然,你也可以选择其他的安装目录,确认无误后点击“Next”,如下图所示:

Golang学习笔记(一)-Go语言环境安装以及运行代码第4张

Go语言开发包的安装没有其他需要设置的选项,点击“Install”即可开始安装,如下图所示:
Golang学习笔记(一)-Go语言环境安装以及运行代码第5张

等待程序完成安装,然后点击“Finish”退出安装程序。

Golang学习笔记(一)-Go语言环境安装以及运行代码第6张

安装完成后,在我们所设置的安装目录下将生成一些目录和文件,如下图所示:

Golang学习笔记(一)-Go语言环境安装以及运行代码第7张

这个目录的结构遵守 GOPATH 规则,后面的章节会提到这个概念。目录中各个文件夹的含义如下表所示。

Go 开发包的安装目录的功能及说明
目录名说明
api每个版本的 api 变更差异
bingo 源码包编译出的编译器(go)、文档工具(godoc)、格式化工具(gofmt)
doc英文版的 Go 文档
lib引用的一些库文件
misc杂项用途的文件,例如 Android 平台的编译、git 的提交钩子等
pkgWindows 平台编译好的中间文件
src标准库的源码
test测试用例


开发时,无须关注这些目录。如果读者希望深度了解底层原理,可以通过上面的介绍继续探索。

设置环境变量

开发包安装完成后,我们还需要配置一下GOPATH 环境变量,之后才可以使用Go语言进行开发。GOPATH 是一个路径,用来存放开发中需要用到的代码包。

在桌面或者资源管理器右键“此电脑”(或者“我的电脑”)→“属性”→“高级系统设置”→“环境变量”,如下图所示。

Golang学习笔记(一)-Go语言环境安装以及运行代码第8张


在弹出的菜单里找到 GOPATH 对应的选项点击编辑之后就可以修改了,没有的话可以选择新建,并将变量名填写为 GOPATH,变量值设置为任意目录均可(尽量选择空目录),例如 D:Go。

Golang学习笔记(一)-Go语言环境安装以及运行代码第9张

 在用户系统变量添加 GOROOT 、 GOPATH 、 GOBIN 三个环境变量

GOBIN="/root/go/bin" 

GOROOT="/usr/local/go"

GOPATH="/root/go"

提示:填写完成后,每个打开的窗口都需要点击“确定”来保存设置。

其它的环境变量安装包均会进行自动设置。在默认情况下,Go 将会被安装在目录 c:go 下,但如果你在安装过程中修改安装目录,则可能需要手动修改所有的环境变量的值。

环境变量设置好后,可以通过 go env 命令来进行测试。

set GO111MODULE=auto
set GOARCH=amd64
set GOBIN=E:goin
set GOCACHE=C:UsersAdministratorAppDataLocalgo-build
set GOENV=C:UsersAdministratorAppDataRoaminggoenv
set GOEXE=.exe
set GOFLAGS=
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOINSECURE=
set GOMODCACHE=E:gopkgmod
set GONOPROXY=
set GONOSUMDB=
set GOOS=windows
set GOPATH=E:go
set GOPRIVATE=
set GOPROXY=https://goproxy.cn,direct
set GOROOT=C:goin
set GOSUMDB=sum.golang.org
set GOTMPDIR=
set GOTOOLDIR=C:goinpkg	oolwindows_amd64
set GCCGO=gccgo
set AR=ar
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:UsersADMINI~1AppDataLocalTempgo-build220352058=/tmp/go-build -gno-record-gcc-switches

上面只显示了部分结果,如果执行go env 命令后,出现类似上面的结果,说明我们的Go开发包已经安装成功了。

免责声明:文章转载自《Golang学习笔记(一)-Go语言环境安装以及运行代码》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇[备忘]Adobe发布Flash到HTML5的转换工具 Wallaby【C/C++多线程编程之五】pthread线程深入理解下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

group by 两个或以上条件的分析

首先group by 的简单说明: group by 一般和聚合函数一起使用才有意义,比如 count sum avg等,使用group by的两个要素:(1) 出现在select后面的字段 要么是是聚合函数中的,要么就是group by 中的.(2) 要筛选结果 可以先使用where 再用group by 或者先用group by 再用having 下面...

不修改sql文本情況下,改變其執行計劃

不修改sql文本情況下,改變其執行計劃 可以使用sql profile和spm(sql plan manage),本文主要介紹SPM方式 sql profile參考sql profile固定執行計劃 步驟 1.手動生成SQL Plan Baseline DECLARE V_TEMP NUMBER; BEGIN V_TEMP :=...

C#获取当前应用程序所在路径及环境变量

C#获取当前应用程序所在路径及环境变量 一、获取当前文件的路径 string str1=Process.GetCurrentProcess().MainModule.FileName;//可获得当前执行的exe的文件名。 string str2=Environment.CurrentDirectory;//获取和设置当前目录(即该进程从中启动的目录)的完...

golang的安装后的文件目录解析

golang的安装是个比较有意思的问题首先我们要分清楚有goroot和gopath这两个环境变量。goroot是go语言安装的地方我的是在D:/go,这个不是非常重要。值得关注的是gopath,gopath一般默认安装在C:Users用户名go这个位置这里的目录结构是这样的。bin文件是存放go文件编译后的exe文件,src文件里的文件目录是这样的其中ne...

xadmin安装2

Django-xadmin的介绍 > `Django`是`python`的重量级web框架,写得少,做得多,非常适合后端开发,它很大的一个亮点是,自带后台管理模块,但它自带的后台管理有点丑,而`Xadmin`是基于`bootstrap`开发的一套后台管理框架,界面非常美观,只需几步就可以替换自带的`Django_admin` 具体的安装步骤 1. x...

Zookeeper权限控制

Zookeeper提供了ACL(Access Control List)权限控制。 使用权限控制,可以控制节点的操作权限,保证安全性。 权限设置:将权限模式、授权对象、权限信息组成一条"scheme:id:permission"格式的ACL请求信息。 权限模式(Scheme):   1)World模式,默认的,任何人可以对zk上任意节点操作   2)IP模...