Windows进行以太坊源码的编译

这里写自定义目录标题

本次以太坊编译的环境

编译器goland,版本2020、Go语言版本1.17。
下载源码:https://github.com/ethereum/go-ethereum
对于2020版本的Goland编译器不能使用1.18版本的go语言,因为会导致导入time包的报错,若使用1.16版本的go语言则go mod命令不能正常使用,会出现下面错误:
go mod tidy: go.mod file indicates go 1.17, but maximum supported version is 1.16
这是golang版本低导致的问题,需要升级到1.17版本。

进行编译

  1. 用Goland打开下载好的源码
    在这里插入图片描述

  2. 调整goland的setting;
    需要设置的由GOROOT和GOPATH,GOROOT是本地go语言的环境,GOPATH里面存的是下载的依赖包存放的地方。
    如果GOROOT显示添加错误,可以在下载的golang文件下的src\runtime\internal\sys中打开zversion.go,添加下面的语句:
    const theVersion = go1.17.6
    需要注意自己的版本号

  3. 在控制台中输入go mod tidy来进行依赖包(以太坊源码中import的包)的下载;
    这是下载完之后的go.mod文件

  4. 然后打开cmd\geth\main.go文件,并进行以下设置,其中Name可以随便写,需要配置的是Directory和Output directory。其中Directory的路径是geth文件存放的路径、Output directory的路径是存放编译好的文件;
    在这里插入图片描述

  5. 配置好之后点击开始来进行编译,下面是运行的结果; 在这里插入图片描述
    .exe文件就是生成的编译好的文件
    本文章借鉴的文章:https://blog.csdn.net/xgocn/article/details/120109780
    对大佬表示感谢。

猜你喜欢

转载自blog.csdn.net/m0_46272611/article/details/126461435
今日推荐