Star: Ubuntu下配置和编译cpp-ethereum客户端启动GPU加速交易

2024-02-02 13:08

本文主要是介绍Star: Ubuntu下配置和编译cpp-ethereum客户端启动GPU加速交易,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Ubuntu下配置和编译cpp-ethereum客户端启动GPU加速交易

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

以太坊客户端有很多语言的版本。 
这里写图片描述 
本文选用的是C++版本。配置过程如下: 
参考:http://ethdocs.org/en/latest/ethereum-clients/cpp-ethereum/index.html#installing-and-building 
环境:Ubuntu16.04 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
  • 1
  • 2
  • 3
  • 4

2.安装Mix IDE(可选)

sudo apt-get install mix-ide
mix-ide
  • 1
  • 2

3.获取源码

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

这个工程中可能会因为网络原因模块下载出错。一种比较笨的办法是删除下载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
  • 1
  • 2
  • 3
  • 4
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
  • 1
  • 2
  • 3
  • 4
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 //官方教程中这一步会更新系统,去掉此命令
  • 1
  • 2
  • 3
  • 4
  • 5
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-devsudo apt-get -y install libjsonrpccpp-dev
sudo apt-get -y install qml-module-qtquick-controls qml-module-qtwebengine
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

5.编译

mkdir build
cd build
cmake ..
make
(or)
make -j <number> //Execute makefile with multiple cores in parallel
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

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

namenode@namenodeIn1035:~/Code/ethereum$ eth
  • 1

7.之前在我的区块链开发(一)文章中将讲过如何安装geth客户端,现在就不讲如何安装geth客户端了,有兴趣的朋友查看我之前的文章。这里我们讲一下 配合使用ethminer和geth 实现GPU挖矿,目的是有些建立的私链,由于交易量增多,geth客户端的挖矿,只适合CPU,速率很低,我们为了提高交易速度,选择GPU提高交易速度。

7.1.启动geth客户端

>geth --datadir "./" --rpcport 8545 --rpcaddr "127.0.0.1" console 2>geth.log
  • 1

7.2启动ethminer使用GPU挖矿

ethminer -G // -G for GPU, -M for benchmark
  • 1

7.3.查看log文件

>tail -f geth.log
  • 1

2018年2月1日整理。

这篇关于Star: Ubuntu下配置和编译cpp-ethereum客户端启动GPU加速交易的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/670799

相关文章

Python使用国内镜像加速pip安装的方法讲解

《Python使用国内镜像加速pip安装的方法讲解》在Python开发中,pip是一个非常重要的工具,用于安装和管理Python的第三方库,然而,在国内使用pip安装依赖时,往往会因为网络问题而导致速... 目录一、pip 工具简介1. 什么是 pip?2. 什么是 -i 参数?二、国内镜像源的选择三、如何

IDEA编译报错“java: 常量字符串过长”的原因及解决方法

《IDEA编译报错“java:常量字符串过长”的原因及解决方法》今天在开发过程中,由于尝试将一个文件的Base64字符串设置为常量,结果导致IDEA编译的时候出现了如下报错java:常量字符串过长,... 目录一、问题描述二、问题原因2.1 理论角度2.2 源码角度三、解决方案解决方案①:StringBui

Ubuntu固定虚拟机ip地址的方法教程

《Ubuntu固定虚拟机ip地址的方法教程》本文详细介绍了如何在Ubuntu虚拟机中固定IP地址,包括检查和编辑`/etc/apt/sources.list`文件、更新网络配置文件以及使用Networ... 1、由于虚拟机网络是桥接,所以ip地址会不停地变化,接下来我们就讲述ip如何固定 2、如果apt安

Android里面的Service种类以及启动方式

《Android里面的Service种类以及启动方式》Android中的Service分为前台服务和后台服务,前台服务需要亮身份牌并显示通知,后台服务则有启动方式选择,包括startService和b... 目录一句话总结:一、Service 的两种类型:1. 前台服务(必须亮身份牌)2. 后台服务(偷偷干

SpringBoot+MyBatis-Flex配置ProxySQL的实现步骤

《SpringBoot+MyBatis-Flex配置ProxySQL的实现步骤》本文主要介绍了SpringBoot+MyBatis-Flex配置ProxySQL的实现步骤,文中通过示例代码介绍的非常详... 目录 目标 步骤 1:确保 ProxySQL 和 mysql 主从同步已正确配置ProxySQL 的

Spring Boot整合log4j2日志配置的详细教程

《SpringBoot整合log4j2日志配置的详细教程》:本文主要介绍SpringBoot项目中整合Log4j2日志框架的步骤和配置,包括常用日志框架的比较、配置参数介绍、Log4j2配置详解... 目录前言一、常用日志框架二、配置参数介绍1. 日志级别2. 输出形式3. 日志格式3.1 PatternL

配置springboot项目动静分离打包分离lib方式

《配置springboot项目动静分离打包分离lib方式》本文介绍了如何将SpringBoot工程中的静态资源和配置文件分离出来,以减少jar包大小,方便修改配置文件,通过在jar包同级目录创建co... 目录前言1、分离配置文件原理2、pom文件配置3、使用package命令打包4、总结前言默认情况下,

Windows设置nginx启动端口的方法

《Windows设置nginx启动端口的方法》在服务器配置与开发过程中,nginx作为一款高效的HTTP和反向代理服务器,被广泛应用,而在Windows系统中,合理设置nginx的启动端口,是确保其正... 目录一、为什么要设置 nginx 启动端口二、设置步骤三、常见问题及解决一、为什么要设置 nginx

springboot启动流程过程

《springboot启动流程过程》SpringBoot简化了Spring框架的使用,通过创建`SpringApplication`对象,判断应用类型并设置初始化器和监听器,在`run`方法中,读取配... 目录springboot启动流程springboot程序启动入口1.创建SpringApplicat

树莓派启动python的实现方法

《树莓派启动python的实现方法》本文主要介绍了树莓派启动python的实现方法,文中通过图文介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧... 目录一、RASPBerry系统设置二、使用sandroidsh连接上开发板Raspberry Pi三、运