zoukankan      html  css  js  c++  java
  • Go 安装介绍

    Go介绍

       Go语言被誉为21世纪的C语言,由Google公司开发,天生对高并发有着优秀的支持。并且语法极度简洁,关键字仅有25个。

       所以使用Go语言时你不用担心自己写的和大神写的有着天差地别,Go语言开发者所书写的代码大家基本都是能看得懂的。

       值得一提的是Go的跨平台性,Go语言跨平台性强到令人发指,你甚至可以再windows下进行开发然后编译出linux下的二进制文件进行部署。

    Go安装

       以下是Go语言的官网,点击下载进行安装即可。

       image-20200928182520348

    Windows

       windows平台下的安装十分简单。当我们下载完安装程序后,双击打开进行安装即可。

       image-20200928182629156

       image-20200928182639468

       image-20200928182704742

       image-20200928182717629

       image-20200928182826320

    Linux

       如果你习惯了在Linux下进行编码,则可以安装LinuxGolang

       当然,基于Golang的跨平台特性,你在window下进行安装和书写代码后编译为Linux下的可执行文件也可。

       选择你的Go版本,进行安装。

    wget https://dl.google.com/go/go1.14.1.linux-amd64.tar.gz
    

       将下载好的文件解压到/usr/local目录下(建议使用root用户解压):

    tar -zxvf go1.14.1.linux-amd64.tar.gz -C /usr/local  # 解压
    

       最后配置一下环境变量,: Linux下有两个文件可以配置环境变量,其中/etc/profile是对所有用户生效的;$HOME/.profile是对当前用户生效的,根据自己的情况自行选择一个文件打开,添加如下两行代码,保存退出。

    export GOROOT=/usr/local/go
    export PATH=$PATH:$GOROOT/bin
    

       修改/etc/profile后要重启生效,修改$HOME/.profile后使用source命令加载$HOME/.profile文件即可生效。 检查:

    ~ go version
    go version go1.14.1 linux/amd64
    

    版本检查

       当安装完Go后,打开终端输入go version命令即可检查是否安装成功。

       image-20200928183308867

    目录结构

       我们在windows下打开刚刚安装好的Go,可查看到如下的目录结构:

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

    环境变量

    GOROOT

       GOROOT为安装Go开发包的路径。

    GOPATH

       GOPATH的路径需要我们自己在环境变量中进行配置,然后才可以使用Go语言进行开发。

       默认的在用户变量中,有一个GOPATH,我们可以将他修改为系统变量或者修改其中的值。

       修改任意值即可。

       image-20200928183746598

       image-20200928184018567

       在设置完环境变量后,使用go env可进行测试查看。

    C:Users云崖先生>go env
    set GO111MODULE=
    set GOARCH=amd64
    set GOBIN=
    set GOCACHE=C:Users云崖先生AppDataLocalgo-build
    set GOENV=C:Users云崖先生AppDataRoaminggoenv
    set GOEXE=.exe
    set GOFLAGS=
    set GOHOSTARCH=amd64
    set GOHOSTOS=windows
    set GOINSECURE=
    set GOMODCACHE=D:GoLeranpkgmod
    set GONOPROXY=
    set GONOSUMDB=
    set GOOS=windows
    set GOPATH=D:GoLeran
    set GOPRIVATE=
    set GOPROXY=https://proxy.golang.org,direct
    set GOROOT=D:Go
    set GOSUMDB=sum.golang.org
    set GOTMPDIR=
    set GOTOOLDIR=D:Gopkg	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:Users 云崖先生AppDataLocalTempgo-build516282802=/tmp/go-build -gno-record-gcc-switches
    

    工程目录

       当配置完GOPATH的环境变量后,我们还需要创建一些文件夹。

       那么对于个人开发者和工程开发来说,都具有一个不同的目录结构。

    个人开发

       在GOPATH中,我们编写的GO源码都应该存放于src文件夹下。

       注意:默认的GOPATH下的bin目录也会添加至环境变量中。

       image-20200928184659438

    工程开发

       在工程开发中,推荐使用个人的Github域名来进行文件夹的命名。

       因为在Go语言中,是按照包来进行管理的,所以为了防止不同包的项目名冲突,就可以按照这种结构来组织目录。

       image-20200928184805506

    编译执行

    VScode工具包

       这里创建出了一个Go文件,并书写我们的第一个Go程序。

       在书写Go程序时,我们可以安装一些Go的工具包(需要先安装git)。

       首先需要设置GOPROXY,打开终端设置如下:

    go env -w GOPROXY=https://goproxy.cn,direct
    

       打开vscodeWindows平台按下Ctrl+Shift+PMac平台按Command+Shift+P,这个时候vscode界面会弹出一个输入框,在其中输入如下命令:

    Go:install/Update Tools
    

       然后全选,开始安装工具包。

       image-20200928193252220

       image-20200928193410164

    Go编写

       接下来编写我们的第一个Go程序,命名为hello.go

    package main  // 声明main包,表明这是一个可执行程序
    
    import "fmt" // 导入内置的fmt包
    
    func main() { // main 程序入口
    	fmt.Println("hello,world!!") // 终端打印
    }
    
    

    go build

       go build表示将源代码编译成可执行文件。

       如下,我们将hello.go进行编译,在终端输入以下命令:

    PS D:GoLeransrcyunya.com> go build -o hello.exe  // 将hello.go进行编译,编译的文件名为hello.exe
    PS D:GoLeransrcyunya.com> .hello.exe // 执行该文件
    hello,world!!
    

       如果不使用-o,则将以上级目录名称作为编译后的文件名称。

       当然,你也可以在其他地方使用go build,后面跟上项目路径。

    go install

       go install会自动进行编译,然后进行执行。

       它会将编译结果的可执行文件放在GOPATHbin目录下。

    go run

       go run可以使go的源码文件立即进行执行而不进行编译。

    D:GoLeransrcyunya.com>go run hello.go
    hello,world!!
    

    跨平台编译

       默认我们go build的可执行文件都是当前操作系统可执行的文件,如果我想在windows下编译一个Linux下可执行文件,那需要怎么做呢?

       只需要指定目标操作系统的平台和处理器架构即可,在cmd下输入以下三条命令:

    SET CGO_ENABLED=0  // 禁用CGO 使用了CGO的代码是不支持跨平台编译的
    SET GOOS=linux  // 目标平台是linux
    SET GOARCH=amd64  // 目标处理器架构是amd64
    

       然后再执行go build命令,得到的就是能够在Linux平台运行的可执行文件了。

       Mac下编译 LinuxWindows平台 64位 可执行程序:

    CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build
    CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build
    

       Linux下编译MacWindows平台64位可执行程序:

    CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build
    CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build
    

       Windows下编译Mac平台64位可执行程序:

    SET CGO_ENABLED=0
    SET GOOS=darwin
    SET GOARCH=amd64
    go build
    
  • 相关阅读:
    Redis 常用操作命令
    apktool反解apk包
    [转]Windows上搭建Kafka运行环境
    Unity3D 原生Android结合UnityPlayerActivity开发遇到的问题
    Unity3D配合AndroidStudio打包
    NodeJS 最快速搭建一个HttpServer
    Android 获得AndroidManifest文件里自定义的meta标签内容
    Unity3D 解决用Unity导出的Android工程在6.0及以上设备会弹出一串权限对话框的问题
    Unity3D 响应摇杆
    Unity3D 接完GVR SDk后如何插入自己的java代码
  • 原文地址:https://www.cnblogs.com/Yunya-Cnblogs/p/13746814.html
Copyright © 2011-2022 走看看