开源项目源码编译环境搭建(Golang)

1.golang环境搭建

1.1 widows

  • 下载地址 选择msi格式的文件即可
    选择.msi后缀的文件下载安装即可
  • 安装完毕后,进入terminal界面,输入命令go vension,检验golang安装是否完毕

在这里插入图片描述

  • 可供配置go的环境变量

GOROOT:go语言的安装目录
GOPATH:go语言的工程目录
GO111MODULE:GO111MODULE是Go语言1.11版本引入的环境变量,用于控制Go的依赖管理模式。当GO111MODULE=off时,Go将采用旧的GOPATH依赖管理方式。当GO111MODULE=on时,Go将使用新的基于模块的依赖管理方式,并忽略GOPATH
GOPROXY:golang镜像源代理地址

#建议配置
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.io,direct

1.2 linux

下文给出cenrtos下的golang环境配置脚本

#!/bin/bash

# 安装依赖
yum install -y wget git

# 下载并安装Go
wget https://golang.google.cn/dl/go1.20.4.linux-amd64.tar.gz
tar -xzf go1.20.4.linux-amd64.tar.gz
mv go /usr/local

# 设置环境变量
echo 'export PATH=$PATH:/usr/local/go/bin' >> /etc/profile
echo 'export GOPATH=$HOME/go' >> /etc/profile
echo 'export PATH=$PATH:$GOPATH/bin' >> /etc/profile
source /etc/profile

# 验证安装是否成功
go version

go env -w GOPROXY=https://mirrors.aliyun.com/goproxy/

2. 源码环境搭建

环境:k8s版本1.23
编译器:goland 操作系统:windows
源码下载:https://gitee.com/mirrors/kubernetes:
注意:官网的源码下载速度过慢,建议从gitee上拉取镜像

  • 创建目录
    为了保证后文执行go mod相关命令不出现异常文件,建议将所有clone的源码保存在GOPATH路径下的src文件夹中。如下图所示,D://go_workbench是笔者的GOPATH路径。
    在这里插入图片描述
  • 检查k8s源码中的go.mod文件内容,在src目录下创建目录层级k8s.io/kubernetes,在这里clone k8s代码
# go.mod文件内容
module k8s.io/kubernetes
go 1.21
  • 在goland中clone源码并选择保存在上述目录中

在这里插入图片描述
在这里插入图片描述

  • clone完毕后,在代码路径下执行命令构建依赖
PS D:\go_workbench\src\k8s.io\kubernetes> go mod tidy
PS D:\go_workbench\src\k8s.io\kubernetes> go mod vendor
  • 等待goland的index构建完毕后,可以开始源码阅读了
    goland为了阅读体验,添加了一些索引,方便定位代码位置,所以在上述流程完毕后,可能需要等待一段时间才可以构建好代码环境。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值