Ethereum,中文翻译是“以太坊”,是一个公有区块链的开源项目。因为以太坊是基于P2P网络所以没有中心节点,所以用户仅安装Ethereum客户端即可连入Ethereum公共网络或者在自己的testnet下运行Ethereum。

  以太坊客户端有很多语言的版本。

  本文选用的是C++版本。配置过程如下:

  参考:http://ethdocs.org/en/latest/ethereum-clients/cpp-ethereum/index.html#installing-and-building

  环境:Ubuntu15.10 x64

  1. 安装“eth”命令行工具

sudo add-apt-repository ppa:ethereum/ethereum-qt
sudo add-apt-repository ppa:ethereum/ethereum
sudo apt-get update
sudo apt-get install cpp-ethereum

  2. 安装Mix IDE(可选)

sudo apt-get install mix-ide
mix-ide

  3. 获取源码

git clone --recursive https://github.com/ethereum/webthree-umbrella.git

  这个工程中可能会因为网络原因模块下载出错。一种比较笨的办法是删除下载webthree-umbrella目录,重新运行上面git clone命令

  4. 配置编译环境

sudo apt-get -y update
sudo apt-get -y install language-pack-en-base
sudo dpkg-reconfigure locales
sudo apt-get -y install software-properties-common
sudo add-apt-repository "deb http://llvm.org/apt/wily/ llvm-toolchain-wily-3.7 main"
wget -O - http://llvm.org/apt/llvm-snapshot.gpg.key | sudo apt-key add -
sudo apt-get -y update
sudo apt-get -y install llvm-3.7-dev
sudo add-apt-repository -y ppa:ethereum/ethereum-qt
sudo add-apt-repository -y ppa:ethereum/ethereum
sudo add-apt-repository -y ppa:ethereum/ethereum-dev
sudo apt-get -y update
//sudo apt-get -y upgrade //官方教程中这一步会更新系统,去掉此命令
sudo apt-get -y install build-essential git cmake libboost-all-dev libgmp-dev \
libleveldb-dev libminiupnpc-dev libreadline-dev libncurses5-dev \
libcurl4-openssl-dev libcryptopp-dev libmicrohttpd-dev libjsoncpp-dev \
libargtable2-dev libedit-dev mesa-common-dev ocl-icd-libopencl1 opencl-headers \
libgoogle-perftools-dev qtbase5-dev qt5-default qtdeclarative5-dev \
libqt5webkit5-dev libqt5webengine5-dev ocl-icd-dev libv8-dev libz-dev sudo apt-get -y install libjsonrpccpp-dev
sudo apt-get -y install qml-module-qtquick-controls qml-module-qtwebengine

  5. 编译

mkdir build
cd build
cmake ..
make
(or)
make -j <number> //Execute makefile with multiple cores in parallel

  6. 测试

  在终端运行eth命令就会开始启动cpp-ethereum客户端

namenode@namenodeIn1035:~/Code/ethereum$ eth

(忘截图了,用下载区块的图代替吧-_-)

最新文章

  1. SQL Like模糊查询一些小知识
  2. kaggle数据挖掘竞赛初步--Titanic&lt;原始数据分析&amp;缺失值处理&gt;
  3. Java通过JNI调用C
  4. python学习笔记-Day4(2)
  5. Excel demo in SSIS
  6. 在stm32上移植wpa_supplicant(二)
  7. OpenCV中Mat的详解
  8. Linux下用Mytop监控MySQL资源
  9. 常用的opengl函数(三)
  10. MUI顶部选项卡的用法(tab-top-webview-main)
  11. SpriteBuilder修改CCB文件中的子CCB文件需要注意的一个地方
  12. 【环套树+树形dp】Bzoj1040 [ZJOI2008] 骑士
  13. 基于geoserver样式服务实现图层要素自定义配图
  14. 开机后Android应用自动启动
  15. 【Linux】LD_PRELOAD用法
  16. 连接 sqlserver
  17. Harbor 搜索镜像及查看 tag
  18. 通信原理之OSI七层参考模型(一)
  19. 最全的JS判断是否为中文的方法
  20. Don&#39;t afraid point

热门文章

  1. 计算5的阶乘并在JSP页面输出
  2. 初试 uTenux
  3. 【转载】Linux的进程间通信-信号量
  4. 图片格式转换之ImageMagick
  5. Java I/O 文件加锁,压缩
  6. iOS - UIAlertView
  7. Mysql 允许null 与 default值
  8. 微信开发时遇到的UrlConnection乱码的问题
  9. The specified child already has a parent错误
  10. Nginx基本配置备忘