Golang的linux运行环境的安装与配置

发布于:2025-05-08 ⋅ 阅读:(16) ⋅ 点赞:(0)

很多新手在学go时,linux下的配置环境一头雾水,总结下,可供参考!

--------------------------------------Golang的运行环境的安装与配置--------------------------------------

将压缩包放在/home/tools/下

解压

tar -zxvf go1.23.6.linux-amd64.tar.gz

进入:cd /usr/local

进行软连接(直接运行命令,不要建立go文件夹)

ln -s /home/tools/go/ go

变为全局命令:

echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.bashrc  # 持久化配置

source ~/.bashrc  # 立即生效

查看go版本

[root@localhost bin]# go version

go version go1.23.6 linux/amd64

--------------------------------------配置golang的环境参数--------------------------------------

编辑 /etc/profile 文件,添加以下内容:

export GOROOT=/usr/local/go

export GOPATH=/data/go  设置自己的工作目录

export PATH=$PATH:$GOROOT/bin:$GOPATH/bin

export GO111MODULE=on

export GOPROXY=https://goproxy.cn,direct 国内修改为cn

生效配置:

source /etc/profile

[root@localhost gate_svr]# vim /etc/profile

[root@localhost gate_svr]# source /etc/profile

清除go的缓存和包缓存:

[root@localhost gate_svr]# go clean -cache

[root@localhost gate_svr]# go clean -modcache

说明:

GOROOT 为 Golang 安装路径

GOPATH 为工作空间目录,需包含 src、pkg(依赖库)、bin 子目录‌

GOPROXY 用于加速依赖包下载‌

‌验证环境‌

go version    # 查看版本

go env        # 检查环境变量

‌创建目录结构‌

mkdir -p $GOPATH/{src,pkg,bin}

需确保工作空间与 GOROOT 路径不同。

设置用户权限

sudo chown -R root:root /data/go

sudo chmod 775 /data/go

开始会遇到:编译代码遇到网络链接各种库连接被拒绝的问题:

go: downloading github.com/xuri/excelize/v2 v2.4.1 ../../common/component/log/log.go:5:2: github.com/natefinch/lumberjack@v2.0.0+incompatible: Get "https://goproxy.cn/github.com/natefinch/lumberjack/@v/v2.0.0+incompatible.zip": dial tcp: lookup goproxy.cn on [::1]:53: read udp [::1]:58615->[::1]:53: read: connection refused

解决办法:

看看网络是否通畅,

nslookup www.baidu.com

有IP的情况下,防火墙或者dns解析的问题:

echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf

echo "nameserver 8.8.4.4" | sudo tee -a /etc/resolv.conf

systemctl restatus NetworkManager  重启网卡


--------------------------------------测试工作目录--------------------------------------

‌创建测试程序‌

mkdir -p /data/go/src/hello

vim /data/go/src/hello/main.go

内容:

package main

import "fmt"

func main() { fmt.Println("Workspace path: /data/go") }

‌编译运行‌

cd /data/go/src/hello

go build    # 生成二进制文件到当前目录

./main     # 运行程序

简单的生成go.mod文件:

go mod init hello

go mod tidy


网站公告

今日签到

点亮在社区的每一天
去签到