以太坊学习3:以太坊客户端编译安装(geth和ethereumj)

客户端安装(Windows)

基础工具下载安装(系统管理员身份运行Cmd)

Geth客户端

  • go语言运行环境搭建
choco install golang
  • MinGW编译器安装
choco install mingw
  • 源代码下载(geth)
git clone https://github.com/ethereum/go-ethereum go-ethereum
  • 编译、安装geth
go install go-ethereum
  • 验证
geth version

ethereumj客户端

  • 安装JDK1.8

  • 下载ethereumj源代码

git clone https://github.com/ethereum/ethereumj
  • 编译生成可执行文件(Jar)
./gradlew clean shadowJar
  • 验证
java -jar ethereumj-core/build/libs/ethereumjcore-*-all.jar --help

客户端安装(Linux)

基础工具下载安装

  • Git版本控制工具:sudo apt-get install git

Geth客户端

  • go语言运行环境搭建
sudo apt-get install golang-1.9
  • 编译器安装
sudo apt-get install build-essential
  • 源代码下载(geth)
git clone https://github.com/ethereum/go-ethereum
  • 编译、安装geth
cd go-ethereum
make geth
  • 验证
build/bin/geth version

ethereumj客户端

安装JDK1.8

下载ethereumj源代码

git clone https://github.com/ethereum/ethereumj

编译生成可执行文件(Jar)

./gradlew clean shadowJar

验证

java -jar ethereumj-core/build/libs/ethereumjcore-*-all.jar --help

客户端安装(Mac)

基础工具下载安装

  • Git版本控制工具 命令:brew install git

Geth客户端

  • go语言运行环境搭建
brew install go
  • 源代码下载(geth)
git clone https://github.com/ethereum/go-ethereum
  • 编译、安装geth
cd go-ethereum
make geth
  • 验证
build/bin/geth version

ethereumj客户端

  • 安装JDK1.8

  • 下载ethereumj源代码

git clone https://github.com/ethereum/ethereumj
  • 编译生成可执行文件(Jar)
./gradlew clean shadowJar
  • 验证
java -jar ethereumj-core/build/libs/ethereumjcore-*-all.jar --help

Geth源代码目录结构(部分)

目录名称 功能说明
init 控制台(JavaScript解释运行时环境)的实现
core 以太坊核心包,实现了以太坊共识协议。
梅克尔树 (Merkle tree),数据结构定义,以太坊虚拟机 (Ethereum Virtual Machine)
crypto 加密算法实现包
ethdb LevelDB的再次封装
mine 实现了区块的生成以及挖矿
net 通信模块,涵盖以下功能模块:节点通信管理、P2P 通信、
全节点同步、快速同步报文、P2P通信
vm EVM(以太坊虚拟机)模块

ethereumj源代码目录结构(部分)

目录名称 功能说明
config 配置管理(节点、网络通信、区块、交易等)模块
core 核心模块,涵盖账户、交易、区块、共识机制的数据 结构和实现逻辑等
crypto 加密算法实现包
datasource 数据源模块,LevelDB、缓存
mine 挖矿模块,涵盖共识算法、区块生成等
p2p p2p网络协议实现
vm EVM(以太坊虚拟机)模块

版权声明:
作者:Joe.Ye
链接:https://www.appblog.cn/index.php/2023/03/25/ethereum-learning-3-ethereum-client-compilation-and-installation-geth-and-ethereumj/
来源:APP全栈技术分享
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
打赏
海报
以太坊学习3:以太坊客户端编译安装(geth和ethereumj)
客户端安装(Windows) 基础工具下载安装(系统管理员身份运行Cmd) Chocolatey软件包管理工具:https://chocolatey.org/install Git版本控制工具:choco in……
<<上一篇
下一篇>>
文章目录
关闭
目 录