<本实验是在 腾讯云服务器 centos 环境 上进行的>
1. 配置 GO 语言环境
参考 菜鸟教程 go
2. 下载 编译 go-ethereum
git clone https://github.com/ethereum/go-ethereum
之后进入 go-ethereum 目录下,执行
make geth
[[email protected]_0_15_centos go-ethereum]# make geth env GO111MODULE=on go run build/ci.go install ./cmd/geth >>> /usr/local/go/bin/go install -ldflags -X main.gitCommit=8045504abf64a865be4b1dbc780b796a9f5d11cc -X main.gitDate=20200211 -v ./cmd/geth github.com/ethereum/go-ethereum/internal/web3ext github.com/peterh/liner github.com/ethereum/go-ethereum/console github.com/naoina/go-stringutil github.com/naoina/toml/ast github.com/naoina/toml github.com/ethereum/go-ethereum/cmd/geth Done building. Run "./build/bin/geth" to launch geth.
此时,容易出现 time out 错误。就是需要的包什么的具体也不太清楚,反正就是有东西被墙了。解决办法就是在自己的电脑上为服务器做代理(参考服务器代理),服务器通过自己的电脑网络进行上网。自己的电脑实现了可以google,这时服务器通过自己电脑的代理,再次执行 make geth 就不会出现 time out 的问题了。
3. 配置环境变量
第二步执行后,出现 Run "./build/bin/geth" to launch geth. 就说明成功了,但是 geth version 的时候会出错,提示没有此命令。 ./build/bin/geth 表示当前目录即相对路径<坑了我一天>
[[email protected]_0_15_centos go-ethereum]# geth version -bash: geth: command not found
我们需要配置环境变量:
export PATH=$PATH:/root/go-ethereum/build/bin
4. 安装成功
geth version 查看 geth 安装版本信息
[[email protected]_0_15_centos ~]# geth version Geth Version: 1.9.11-unstable Git Commit: 5f2002bbcc1ad21818d9b08badea84acac6d0481 Git Commit Date: 20200212 Architecture: amd64 Protocol Versions: [64 63] Go Version: go1.13.7 Operating System: linux GOPATH=/root/go GOROOT=/usr/local/go
5. tips
有时候退出控制终端后再次进入,geth version 的时候会找不到 geth 命令(go一样)。编辑 ~/.bashrc
[[email protected]_0_15_centos ~]# vi ~/.bashrc 输入以下内容(根据自己的路径)
#go env export GOPATH=$HOME/go export GOROOT=/usr/local/go export PATH=$PATH:/usr/local/go/bin # geth env export PATH=$PATH:/root/go-ethereum/build/bin
[[email protected]_0_15_centos ~]# source ~/.bashrc
这样就完成了 geth 客户端的安装!
参考 :
原文地址:https://www.cnblogs.com/xsmile/p/12303947.html