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

文章目录

安装

Golang对Linux的内核版本要求

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

下载golang的代码版本

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

安装

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

环境配置

默认使用root账户进行配置

编辑配置文件vim /etc/profile,在文件最后加入:

shell 复制代码
# /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

验证go环境

在终端执行go version,确认环境安装完成且可以使用。

shell 复制代码
# go version
go version go1.23.0 linux/amd64

配置go下载包的代理地址

1、执行go env -w GO111MODULE=on

2、执行go env -w GOPROXY=https://goproxy.io,direct

3、执行go env,得到类似以下的结果:

shell 复制代码
GO111MODULE='on'
GOARCH='amd64'
GOBIN=''
GOCACHE='/root/.cache/go-build'
GOENV='/root/.config/go/env'
GOEXE=''
GOEXPERIMENT=''
GOFLAGS=''
GOHOSTARCH='amd64'
GOHOSTOS='linux'
GOINSECURE=''
GOMODCACHE='/home/go/pkg/mod'
GONOPROXY=''
GONOSUMDB=''
GOOS='linux'
GOPATH='/home/go'
GOPRIVATE=''
GOPROXY='https://goproxy.cn,direct'
GOROOT='/root/go'
GOSUMDB='sum.golang.org'
GOTMPDIR=''
GOTOOLCHAIN='auto'
GOTOOLDIR='/root/go/pkg/tool/linux_amd64'
GOVCS=''
GOVERSION='go1.23.0'
GODEBUG=''
GOTELEMETRY='local'
GOTELEMETRYDIR='/root/.config/go/telemetry'
GCCGO='gccgo'
GOAMD64='v1'
AR='ar'
CC='gcc'
CXX='g++'
CGO_ENABLED='1'
GOMOD='/root/exporter/go.mod'
GOWORK=''
CGO_CFLAGS='-O2 -g'
CGO_CPPFLAGS=''
CGO_CXXFLAGS='-O2 -g'
CGO_FFLAGS='-O2 -g'
CGO_LDFLAGS='-O2 -g'
PKG_CONFIG='pkg-config'
GOGCCFLAGS='-fPIC -m64 -pthread -Wl,--no-gc-sections -fmessage-length=0 -ffile-prefix-map=/tmp/go-build1611022934=/tmp/go-build -gno-record-gcc-switches'

第一个go程序

编写hello.go

vim hello.go

golang 复制代码
# 在主文件中必须引入main的包
package main
 
import "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框架作为服务器等等。

相关推荐
充电zcx25 分钟前
Linux:2:Linux下的基本指令
linux·运维·服务器
数安旭说32 分钟前
从“人治”到“平台化”:迪康端点安全一体化管理平台的任务协同实战
运维·数据安全·软件需求·企业管理·终端管理·终端安全·终端运维
handler0136 分钟前
【Linux】虚拟地址空间解析
linux·运维·c++·线程·进程·虚拟地址空间·虚拟地址
可视化运维管理爱好者1 小时前
机房工勘记录器分享
运维·网络·nvisual
i网路游侠1 小时前
免费堡垒机 | 福瑞智能运维审计系统(堡垒机)?
运维·堡垒机·等级保护·运维审计·运维安全审计
我不会起名字3221 小时前
一天一道算法题(29):单调栈
java·数据结构·python·算法·leetcode·golang·单调栈
天外天-亮1 小时前
docker + window 安装
运维·docker·容器
User_芊芊君子1 小时前
让异构增量同步飞起来-KFS全链路并行同步方案
运维·自动化·ansible
进击的小菜鸡dd2 小时前
docker 容器的挂载映射关系查看
运维·docker·容器
海宇AI2 小时前
零信任架构实战:基于海宇风控黑名单构建自动化企业信贷网关
运维·人工智能·架构·自动化