Linux通过源码编译安装Go语言

Linux通过源码编译安装Go语言

运行环境

操作系统:CentOS 
系统架构:x86_64
Linux内核版本:4.18.0

获得Go语言源码

我建议直接从GitHub上面clone代码下来

切换到一个你规定的文件夹,然后运行
git clone https://github.com/golang/go.git

在国内遇到了git clone 比较慢的情况,所以我们使用一个加速下载地址(可能会失效)

https://github.91chi.fun/https://github.com/golang/go.git

接下来,我们切换到该文件夹内

cd go/
然后切换到最新版本分支(笔者写这篇文章时,最新是go1.18)
git checkout release-branch.go1.18

如下图所示:

编译Go语言源码

首先,我们进入Go语言源码目录的src文件夹下,然后运行脚本all.bash

cd src/
./all.bash

发现,遇到了报错,如下图所示:

我们经过查资料才知道,在编译Go语言超过1.4版本的源码的时候,是基于Go语言自己编译的,所以需要一个Go语言运行环境。

经过查资料了解到,最后一个通过C语言编译的Go语言环境是1.4版本,所以我们先切换到1.4分支,使用C语言编译一个1.4版本的Go语言运行环境,接下来在编译高版本的Go就可以了
所以,我们先切换到go1.4分支下,然后运行脚本

git checkout release-branch.go1.4
./all.bash

然后又遇到了问题,如下图所示:

然后我才了解到了,我没有安装C语言的编译环境,接下来要安装C语言的编译环境
输入以下命令

yum install gcc 
yum install make

然后继续运行脚本,得到结果如下所示:

说明go1.4版本编译成功,接下来,我们要配置环境以后,才能进行重新编译

cp /home/govzzp/go ~/go1.4 -rf
git clean -dfx

我们继续切换回go1.18分支下,进行编译,如下图所示:

,接下来,我们运行脚本,得到的结果如下图所示:

配置环境变量

export GOROOT_BOOTSTRAP=/home/govzzp/go1.4
export GOROOT=/hone/govzzp/go
export GOPATH=/home/govzzp/gopath
export GOBIN=${GOPATH}/bin
export PATH=${PATH}:${GOBIN}:${GOROOT}/bin

编译安装完成

Administrator
Linux通过源码编译安装Go语言
https://www.govzzp.cn/2022/04/22/377/
Administrator
THE END
分享
二维码
打赏
< <上一篇
下一篇>>
文章目录
关闭
目 录