当前位置: 首页 > news >正文

Linux下go环境安装、环境配置并执行第一个go程序

一、安装

1.Golang对Linux的内核版本要求
GO对Linux内核版本最低要求是 2.6.23,对应要求操作系统版本是:

            RHEL 6.0+CentOS 6.0+即,不支持 (RHEL 和 CentOS) 的 (4.x or 5.x)。

2.下载golang的代码版本

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

在这里插入图片描述

3.安装

①使用root账户登录服务器,将下载好的压缩包上传到/usr/local/目录下;②将压缩包进行解压

二、环境配置

1.非root账户配置(工作空间)

  • 在工作目录中新建bin(编译后可的执行文件的存放路径)、src(源码路径)、pkg(编译包时,生成的.a文件的存放路径)目录;
  • vim ~/.bash_profile

a.在文件最后加入:

# $HOME/go 为工作空间的路径,可自行修改
export GOPATH=$HOME/go

source ~/.bash_profile

2.root账户配置

vim /etc/profile

a.在文件最后加入:

# /usr/local/go/bin 为go安装目录的bin目录,系统所有账户可以使用bin下的命令进行执行
export PATH=$PATH:/usr/local/go/bin
# /home/go/go 为go工作空间的目录,可自行修改
export GOPATH=/home/go/go 
# /usr/local/go 为go的安装目录
export GOROOT=/usr/local/go

3.验证go环境
①在root账户和非root账户都执行一下go version,确认环境安装完成且可以使用。

在这里插入图片描述

    ②执行go env,得到类似以下的结果:
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/home/go/.cache/go-build"
GOENV="/home/go/.config/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOINSECURE=""
GONOPROXY=""
GONOSUMDB=""
GOOS="linux"
GOPATH="/home/go/go"
GOPRIVATE=""
GOPROXY=""
GOROOT="/usr/local/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
AR="ar"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build794900241=/tmp/go-build -gno-record-gcc-switches"

4.配置go下载包的代理地址

  1. 执行go env -w GO111MODULE=on
  2. 执行go env -w GOPROXY=https://goproxy.io,direct
  3. 执行完成①和②之后,再次进行go env得到以下结果
GO111MODULE="on"
GOARCH="amd64"
GOBIN=""
GOCACHE="/home/go/.cache/go-build"
GOENV="/home/go/.config/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOINSECURE=""
GONOPROXY=""
GONOSUMDB=""
GOOS="linux"
GOPATH="/home/go/go"
GOPRIVATE=""
GOPROXY="https://goproxy.io,direct"
GOROOT="/usr/local/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
AR="ar"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build794900241=/tmp/go-build -gno-record-gcc-switches"

三、第一个go程序

  1. 切换到工作空间的src目录下面
  2. vim hello.go
# 在主文件中必须引入main的包
package mainimport "fmt"# 通过找到该main()方法进行执行程序
func main() {fmt.Printf("Hello,World!!!\n")
}
    ③运行hello.go文件a.通过使用go run hello.go生成可执行文件,然后使用./hello得到结果b.通过使用go build执行生成可执行文件,然后使用./hello得到以上a的相同结果c.对于复杂的工程,使用go run *.go生成可执行文件,然后使用nohup ./可执行文件 &  例如使用gin框架作为服务器等等。

四、Go的一些介绍

1.环境变量:
$GOROOT:
表示Go的安装目录。也就是上面我们解压出来的文件夹里面的go文件夹。
$GOPATH:
表示我们的工作空间。用来存放我们的工程目录的地方。
2.GOPATH目录:
一般来说GOPATH下面会有三个文件夹:bin、pkg、src,没有的话自己创建。每个文件夹都有其的作用。

bin:编译后可的执行文件的存放路径
pkg:编译包时,生成的.a文件的存放路径
src:源码路径,一般我们的工程就创建在src下面。

http://www.lryc.cn/news/162889.html

相关文章:

  • 自定义Dynamics 365实施和发布业务解决方案 - 5. 高级自定义
  • 软件测试下的AI之路(2)
  • 前端面试的话术集锦第 7 篇:高频考点(浏览器渲染原理 安全防范)
  • 打印剪刀手“耶”(V形)
  • eNSP基本命令大全
  • java并发编程 ConcurrentLinkedQueue详解
  • msvcp110.dll是什么意思与msvcp110.dll丢失的解决方法
  • 八)Stable Diffussion使用教程:MultiDiffusion
  • java通过钉钉机器人发消息
  • Git工具本地管理总结
  • 单片机C语言实例:13、看门狗
  • 时序分解 | MATLAB实现基于SSA奇异谱分析的信号分解分量可视化
  • mysql报错:Duplicate entry ‘...‘ for key ‘field‘
  • 什么是回流跟重绘?从中怎么优化网页性能?
  • Redis事务机制
  • [EROOR] SpringMVC之500 回调函数报错
  • [Linux]文件系统
  • 常见面试题记录
  • Android 系统源码目录frameworks/base/packages和packages/apps下的APP区别
  • 2023年数维杯数学建模A题河流-地下水系统水体污染研求解全过程文档及程序
  • Java测试(10)--- selenium
  • 【文末送书】Matlab科学计算
  • ElementUI浅尝辄止30:PageHeader 页头
  • [Qt]基础数据类型和信号槽
  • UIStackView入门使用两个问题
  • 【Sentinel】Sentinel与gateway的限流算法
  • python实现对excel表中的某列数据进行排序
  • CMS指纹识别
  • STL- 常用算法
  • 苹果铃声怎么设置?3招教你设置个性化铃声!