万事开头难-go语言的安装及环境配置

简介: 万事开头难-go语言的安装及环境配置

@[toc]

一 . 前言

go语言官网:https://golang.google.cn/

go中文网:https://studygolang.com/dl

二. 下载相应的软件包

在这里插入图片描述

现在最新版本是1.19版本

linux 和Windows两个系统的包都可以下载:

在这里插入图片描述

三. 安装:

在这里插入图片描述

1. 双击开始安装

FFF,t_70,g_se,x_16)

2. 选择合适的路径安装

在这里插入图片描述
在这里插入图片描述
路径可以新建一个,比如我后来的安装中,放到了c:\golang\

不要忘记你安装的路径,所以尽可能用个好记的名字

3. 开始安装

在这里插入图片描述

点击install就开始安装了。

4. 测试

安装完成之后开始测试:

打开CMD 输入go
在这里插入图片描述

查看版本使用:version

在这里插入图片描述

如果在cmd中没有出现版本,需要修改环境变量

6. 配置变量 GOPATH

GOPATH 是 Go语言中使用的一个环境变量,它使用绝对路径提供项目的工作目录(workspace)。

GOPATH下创建src文件夹,即存放Go项目代码的位置。

默认情况下在golang1.9中你安装的时候,你的安装路径就是你的GOPATH路径,不需要修改。

搜索:在这里插入图片描述
在这里插入图片描述

新建一个目录,用来存放后期写的代码:

在这里插入图片描述
默认这个值和你的环境变量是一样的,如果已经存在可以删掉重新创建

系统变量中:

变量名:GOROOT
变量值:C:\GO
(写你的go的安装目录,不要乱写)

变量名:GOPATH
变量值:D:\golang
此处的golang是我们后面要创建go项目的 地址
在这个路径中要创建 bin src pkg 三个文件夹

GoWork有三个目录

在这里插入图片描述

src // 存储go的源代码(需要我们自己手动创建)
pkg // 存储编译后生成的包文件 (自动生成)
bin // 存储生成的可执行文件(自动生成)

配置好后,查看环境变量:

C:\Users\xinsz08>go env
set GO111MODULE=
set GOARCH=amd64
set GOBIN=
set GOCACHE=C:\Users\xinsz08\AppData\Local\go-build
set GOENV=C:\Users\xinsz08\AppData\Roaming\go\env
set GOEXE=.exe
set GOEXPERIMENT=
set GOFLAGS=
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOINSECURE=
set GOMODCACHE=E:\GoWork\pkg\mod
set GONOPROXY=
set GONOSUMDB=
set GOOS=windows
set GOPATH=E:\GoWork
set GOPRIVATE=
set GOPROXY=https://proxy.golang.org,direct
set GOROOT=E:\golang_install_win
set GOSUMDB=sum.golang.org
set GOTMPDIR=
set GOTOOLDIR=E:\golang_install_win\pkg\tool\windows_amd64
set GOVCS=
set GOVERSION=go1.17.5
set GCCGO=gccgo
set AR=ar
set CC=gcc
set CXX=g++
set CGO_ENABLED=1
set GOMOD=NUL
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=D:\Temp\go-build1159393017=/tmp/go-build -gno-record-gcc-switches

其中: GOROOT表示开发包的安装目录
set GOROOT=C:\golang
set GOPATH=C:\go

补充:

执行完go之后出来的参数

C:\Users\xinsz08>go
Go is a tool for managing Go source code.

Usage:

        go <command> [arguments]

The commands are:

        bug         start a bug report   ## bug 报告
        build       compile packages and dependencies## 构建包和依赖项 
        clean       remove object files and cached files  ## 清楚缓存文件和对象
        doc         show documentation for package or symbol
        env         print Go environment information
        fix         update packages to use new APIs
        fmt         gofmt (reformat) package sources
        generate    generate Go files by processing source
        get         add dependencies to current module and install them
        install     compile and install packages and dependencies  ## 安装编译依赖项
        list        list packages or modules
        mod         module maintenance
        run         compile and run Go program  ## 运行go程序
        test        test packages
        tool        run specified go tool
        version     print Go version   ## 打印版本
        vet         report likely mistakes in packages

Use "go help <command>" for more information about a command.

Additional help topics:

        buildconstraint build constraints
        buildmode       build modes
        c               calling between Go and C
        cache           build and test caching
        environment     environment variables
        filetype        file types
        go.mod          the go.mod file
        gopath          GOPATH environment variable
        gopath-get      legacy GOPATH go get
        goproxy         module proxy protocol
        importpath      import path syntax
        modules         modules, module versions, and more
        module-get      module-aware go get
        module-auth     module authentication using go.sum
        packages        package lists and patterns
        private         configuration for downloading non-public code
        testflag        testing flags
        testfunc        testing functions
        vcs             controlling version control with GOVCS

Use "go help <topic>" for more information about that topic.


C:\Users\xinsz08>

四. 卸载go语言

1. 双击安装包

在这里插入图片描述

2. 点击remove

在这里插入图片描述
在这里插入图片描述

3. 卸载完成

在这里插入图片描述

五. 注册github

填写账号密码
在这里插入图片描述

  1. 登陆

在这里插入图片描述

一些提示,看看就好

在这里插入图片描述

下载github桌面

https://desktop.github.com/

私人地址: https://github.com/mufengxiaoyue/golang.git

六. 总结

go的安装越来越智能化,学习的难度越来越小.,go+github 让学习更简单

github和git如何使用,后面再写一篇文章.

相关文章
|
21天前
|
存储 监控 算法
员工上网行为监控中的Go语言算法:布隆过滤器的应用
在信息化高速发展的时代,企业上网行为监管至关重要。布隆过滤器作为一种高效、节省空间的概率性数据结构,适用于大规模URL查询与匹配,是实现精准上网行为管理的理想选择。本文探讨了布隆过滤器的原理及其优缺点,并展示了如何使用Go语言实现该算法,以提升企业网络管理效率和安全性。尽管存在误报等局限性,但合理配置下,布隆过滤器为企业提供了经济有效的解决方案。
67 8
员工上网行为监控中的Go语言算法:布隆过滤器的应用
|
1月前
|
Go 开发工具
百炼-千问模型通过openai接口构建assistant 等 go语言
由于阿里百炼平台通义千问大模型没有完善的go语言兼容openapi示例,并且官方答复assistant是不兼容openapi sdk的。 实际使用中发现是能够支持的,所以自己写了一个demo test示例,给大家做一个参考。
|
1月前
|
存储 Go 索引
go语言中的数组(Array)
go语言中的数组(Array)
111 67
|
2天前
|
算法 安全 Go
Go语言中的加密和解密是如何实现的?
Go语言通过标准库中的`crypto`包提供丰富的加密和解密功能,包括对称加密(如AES)、非对称加密(如RSA、ECDSA)及散列函数(如SHA256)。`encoding/base64`包则用于Base64编码与解码。开发者可根据需求选择合适的算法和密钥,使用这些包进行加密操作。示例代码展示了如何使用`crypto/aes`包实现对称加密。加密和解密操作涉及敏感数据处理,需格外注意安全性。
27 14
|
2天前
|
Go 数据库
Go语言中的包(package)是如何组织的?
在Go语言中,包是代码组织和管理的基本单元,用于集合相关函数、类型和变量,便于复用和维护。包通过目录结构、文件命名、初始化函数(`init`)及导出规则来管理命名空间和依赖关系。合理的包组织能提高代码的可读性、可维护性和可复用性,减少耦合度。例如,`stringutils`包提供字符串处理函数,主程序导入使用这些函数,使代码结构清晰易懂。
26 11
|
2天前
|
存储 安全 Go
Go语言中的map数据结构是如何实现的?
Go 语言中的 `map` 是基于哈希表实现的键值对数据结构,支持快速查找、插入和删除操作。其原理涉及哈希函数、桶(Bucket)、动态扩容和哈希冲突处理等关键机制,平均时间复杂度为 O(1)。为了确保线程安全,Go 提供了 `sync.Map` 类型,通过分段锁实现并发访问的安全性。示例代码展示了如何使用自定义结构体和切片模拟 `map` 功能,以及如何使用 `sync.Map` 进行线程安全的操作。
|
6天前
|
监控 安全 算法
深度剖析核心科技:Go 语言赋能局域网管理监控软件进阶之旅
在局域网管理监控中,跳表作为一种高效的数据结构,能显著提升流量索引和查询效率。基于Go语言的跳表实现,通过随机化索引层生成、插入和搜索功能,在高并发场景下展现卓越性能。跳表将查询时间复杂度优化至O(log n),助力实时监控异常流量,保障网络安全与稳定。示例代码展示了其在实际应用中的精妙之处。
28 9
|
16天前
|
算法 安全 Go
Go 语言中实现 RSA 加解密、签名验证算法
随着互联网的发展,安全需求日益增长。非对称加密算法RSA成为密码学中的重要代表。本文介绍如何使用Go语言和[forgoer/openssl](https://github.com/forgoer/openssl)库简化RSA加解密操作,包括秘钥生成、加解密及签名验证。该库还支持AES、DES等常用算法,安装简便,代码示例清晰易懂。
48 12
|
19天前
|
监控 算法 安全
解锁企业计算机监控的关键:基于 Go 语言的精准洞察算法
企业计算机监控在数字化浪潮下至关重要,旨在保障信息资产安全与高效运营。利用Go语言的并发编程和系统交互能力,通过进程监控、网络行为分析及应用程序使用记录等手段,实时掌握计算机运行状态。具体实现包括获取进程信息、解析网络数据包、记录应用使用时长等,确保企业信息安全合规,提升工作效率。本文转载自:[VIPShare](https://www.vipshare.com)。
25 0
|
1月前
|
Go 数据安全/隐私保护 UED
优化Go语言中的网络连接:设置代理超时参数
优化Go语言中的网络连接:设置代理超时参数