本次以太坊编译的环境
编译器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版本。
进行编译
-
用Goland打开下载好的源码 ;
-
调整goland的setting;
需要设置的由GOROOT和GOPATH,GOROOT是本地go语言的环境,GOPATH里面存的是下载的依赖包存放的地方。
如果GOROOT显示添加错误,可以在下载的golang文件下的src\runtime\internal\sys中打开zversion.go,添加下面的语句:
const theVersion =go1.17.6
-
在控制台中输入go mod tidy来进行依赖包(以太坊源码中import的包)的下载;
-
然后打开cmd\geth\main.go文件,并进行以下设置,其中Name可以随便写,需要配置的是Directory和Output directory。其中Directory的路径是geth文件存放的路径、Output directory的路径是存放编译好的文件;
文章来源:https://www.toymoban.com/news/detail-555224.html -
配置好之后点击开始来进行编译,下面是运行的结果;
本文章借鉴的文章:https://blog.csdn.net/xgocn/article/details/120109780
对大佬表示感谢。文章来源地址https://www.toymoban.com/news/detail-555224.html
到了这里,关于Windows进行以太坊源码的编译的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!