Linux 安装GO开发环境

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

1.查看LINUX版本

cat /proc/version

创建目录softeware目录存储下载包

2.下载go 安装包 先去golang官网下载golang的安装包

golang的官网在国内访问比较慢建议去国内的网站下载https://studygolang.com/dl 根据不同的平台选择对应的安装包

选择linux对应架构的包。

例如如果是intel和amd的CPU的电脑则下载后缀是amd64.tar.gz的文件。

本文下载的是go1.18.10.linux-amd64.tar.gz

使用rz命令上传文件包提示rz未找到命令

执行命令yum install lrzsz -y

或者wget https://golang.google.cn/dl/go1.18.linux-amd64.tar.gz

解压下载包tar -C /usr/local -xzf go1.18.linux-amd64.tar.gz

3.配置环境。

在环境变量配置文件/etc/profile中添加以下内容

#set go environment
GOROOT=/usr/local/go
GOBIN=$GOROOT/bin
PATH=$PATH:$GOBIN/
export GOROOT  GOBIN PATH

# 使profile配置立即生效

命令source /etc/profile

# 查看Go版本

go version go1.18 linux/amd64

4.设置Go Modules和代理

Go Modules是Go语言依赖管理解决方案。

Go.mod是Golang1.11版本新引入的官方包管理工具用于解决之前没有地方记录依赖包具体版本的问题方便依赖包的管理。

Go.mod其实就是一个ModulesModules是相关Go包的集合是源代码交换和版本控制的单元。

一个源代码目录甚至是空目录都可以作为Modules只要其中包含有go.mod文件。

第一步mod文件字段内容。

go.mod是启用了Go moduels的项目所必需的最重要的文件它描述了当前项目当前模块的元信息每一行都以一个动词开头。目前有以下5个动词

module用于定义当前项目的模块路径。

go用于设置预期的Go版本。

require用于设置一个特定的模块版本。

exclude用于从使用中排除一个特定的模块版本。

replace用于将一个模块版本替换为另外一个模块版本。

第二步生成go.mod。

# 打开Go modules

命令go env -w GO111MODULE=on

# 设置GOPROXY

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

或者再修改/etc/profile 文件内容的时候已经添加了代理代码如下

export GO111MODULE=on
export GOPROXY=https://goproxy.cn,direct

执行source /etc/profile

5. 创建工作空间

输入下面的指令

# mkdir $HOME/go

这时我们就在/root 目录中创建了go文件

下一步类似上面修改文件的操作输入下面的指令

# vi ~/.bash_profile

加上

export GOPATH=$HOME/go

export GOBIN=$GOPATH/bin

输入下面的指令

# source ~/.bash_profile

6.创建你的工作目录

依次输入下面的指令

进入工作空间

# cd $GOPATH

这里我们需要创建三个目录bin pkg src 这三个目录必须要有

  • src 存储go的源代码需要我们自己手动创建。

  • pkg 存储编译后生成的包文件 自动生成。

  • bin存储生成的可执行文件自动生成。

以后可以将go的源文件放在src文件夹内

可以先看一下你有没有这三个文件创建没有的文件就好

创建三个目录

# mkdir bin pkg src

进入src文件

7. 创建程序并运行hello world

package main
 
import ( "fmt" )
 
func main() {
 
       fmt.Println("Hello, world!")
 
}

1.go mod init hello模块名称

go build

2. go run main.go

这时当前目录生成了一个文件hello

# ./hello

3. 接下来试试go install hello然后在工作目录下的bin目录下会生成hello*文件

7. Go modules常用命令。

# 了解Go modules启用和未启用两种状态下的go get的行为

命令go help module-get

go help gopath-get

用go get拉取新的依赖

# 拉取最新的版本(优先择取tag)

命令go get golang.org/x/text@latest

# 拉取master分支的最新commit

命令go get golang.org/x/text@master

# 拉取tag为v0.3.2的commit

命令go get golang.org/x/text@v0.3.2

# 拉取hash为342b231的commit最终会被转换为v0.3.2

命令go get golang.org/x/text@342b2e

# 更新现有的依赖

命令go get -u

# 下载go.mod文件中指明的所有依赖

命令go mod download

# 整理现有的依赖

命令go mod tidy

# 查看现有的依赖结构

命令go mod graph

# 生成go.mod文件唯一可以生成go.mod文件的子命令

命令go mod init

# 编辑go.mod文件

命令go mod edit

# 导出现有的所有依赖

命令go mod vendor

# 校验一个模块是否被篡改过

命令go mod verify

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: golinux