Ubuntu系统搭建以太坊开发平台过程

  • Post author:
  • Post category:其他


前言

本文主要总结在Ubuntu系统上搭建以太坊开发平台的过程。


注意

  • 安装以下软件的时候,请尽量使用ubuntu系统官方的apt源。由于国内很多公司,例如阿里,网易,腾讯等都免费提供apt源,在有的时候当然可以加快我们安装软件的速度。但是,在安装本文所介绍的软件的时候我就遇到了各种奇葩的错误,后来更换了ubuntu的官方apt源后有些问题就没有了。
  • 在使用

    npm

    安装某些软件的时候,由于系统某些进程占用,会导致安装过程出错。在搞不清楚哪些进程占用的情况下,还是重启系统比较简单粗暴。
  • 本文所述安装过程均在Ubuntu16.04 64位系统下完成,有些安装过程在早期版本的Ubuntu系统中会出现错误,这一点请大家注意。

安装git,NodeJS

输入以下命令安装git:

sudo apt-get install git


注意

如果在安装git时出现

E:Package 'git' has no installation candidate

错误提示,只需使用以下命令代替即可

1

sudo apt-get install git-core

因为以太坊开发需要使用开发框架,但是,目前最好用且使用人数最多的是第三方开发框架Truffle。而Truffle建议系统所用NodeJS版本为5.0以上

2

,因此,我们就需要安装NodeJS的最新版本。

有多种方法安装NodeJS:

方法一:使用apt,输入以下命令安装NodeJS 6.0以上版本

3

sudo apt-get install curl
curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
sudo apt-get install -y nodejs

方法二:从

Node官网

下载源码并解压,然后自行编译安装(以安装Node V6.9.2为例)

4


5

tar -zxvf node-v6.9.2.tar.gz
cd node-v6.9.2
sudo ./configure
sudo make
sudo make install

方法二因为要重新编译,因此耗费的时间可能多一点。

安装solc

输入以下命令安装solc

6

sudo npm install -g solc

安装完后,我们就会发现在终端中输入

solc

命令返回一个出错信息。这是因为solc只是一个程序集,如果我们想要在终端中使用

solc

程序编译智能合约,则需要安装

solc-cli

,这是

solc

的命令行界面。

输入以下命令安装

solc-cli

:

sudo npm install -g solc-cli

输入以下命令可以一并安装

solc



solc-cli


7

(推荐使用此命令安装):

sudo npm install -g solc solc-cli --save-dev

如果输入

solcjs --help

命令,有以下输出,则表明solc和solc-cli安装成功:

zcc@ubuntu:~$ solcjs --help
Usage: solcjs [options] [input_file...]

Options:
  --version         Show version number                                [boolean]
  --optimize        Enable bytecode optimizer.                         [boolean]
  --bin             Binary of the contracts in hex.                    [boolean]
  --abi             ABI of the contracts.                              [boolean]
  --interface       Solidity Interface of the contracts.               [boolean]
  --output-dir, -o  Output directory for the contracts.                 [string]
  --help            Show help                                          [boolean]

到了这里,如果想以后的智能合约编译工作不使用geth控制台来完成,那么solc编译器就算安装完了。但是,如果我们需要在geth控制台使用solc编译器,那么我们仍然需要安装solc二进制包。输入以下命令安装solc二进制包

8

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

如果在输入第一条命令的时候出现了错误,可以尝试重新启动系统来解决。


注意

如果你安装了

webthree-umbrella

,那么

solc

就会默认安装,但是我们在终端输入

solc

并没有显示可用的命令,我们需要输入以下命令手动建立软链接

9

sudo ln -s /home/zcc/webthree-umbrella/solidity/build/solc/solc /bin/solc

这样就能直接在终端使用solc程序了。

安装testrpc

输入以下命令安装testrpc

10

sudo npm install -g ethereumjs-testrpc

如果输入

testrpc

命令,有以下输出,则表明

testrpc

安装成功:

zcc@ubuntu:~$ testrpc
EthereumJS TestRPC v2.0.9

Available Accounts
==================
(0) 0x3aaf37e090b570596c47eeb83dee6d7eb6010b87
(1) 0x2ab74e4872f69f59ddfb19535e731b5abe012748
(2) 0x5c393ac0eccb6236641b5e3fadae83b745aab893
(3) 0xa23e3e6c2c11a26b58f0656168dadb4f4965648e
(4) 0xf15a17d9ecfeed966721e2dddccb1709568c5b83
(5) 0xb7eadd05c6661884f29dee4f77dfb634b1925729
(6) 0x77a4609285693d7773b809af4218a0a3702fac2f
(7) 0xb62e0d887bc7b17810159108f1b6a32eb8c5f51a
(8) 0xeddcef43e382e4150465d8bd113e5fbc02077aaf
(9) 0xb2f5addd09b2fb9c94bf41e851a3d537b88748a1

Private Keys
==================
(0) 452b5601745b2c65c3a88f6a56b4bc393511f453646031097fc8d18948f46581
(1) aaea0670b3eff9db750db8641f3b08ec8268373945f837bf393cf3e494ec8da6
(2) c9be77fd26933d26ae309a3fe5dbd1cb9747d4f5e872fff3f07921f0b5ff15c7
(3) 8767cbcd5eafbf914ee66590de121c7fbf951a793d1c7f9376b5d1ba064808ea
(4) 2e2117afb334e870f15760e74c9d1f72f3c15d59fb047b603590be8d67a5338e
(5) 017221e1344fdad12ff90b644979052525d048e10596cb88ae4411dcd6cbe3be
(6) 13a47c99a21403f30579b08ce6116af50028af21b9de13bab05b8d1c45349593
(7) 24c9f2b3bbf9ebd193c2c9aa3ab62c58005ecb20b9fb28f43b54f9bec7d5b4fb
(8) e048a57d2d68f5f198b6dc23e8596f88e155bdb2157e616af6247392f49b2e2e
(9) 16e49075f5cbe265cbb6c7af181d9d6b4e017f39a861d6e2655a7899ad2288f0

HD Wallet
==================
Mnemonic:      cliff evolve motion suit citizen crack borrow churn way glare series trust
Base HD Path:  m/44'/60'/0'/0/{account_index}

Listening on localhost:8545


注意

  • 参考网页中的命令没有

    sudo

    ,但是因为

    -g

    参数是表示全局安装,则需要使用root权限才能安装成功

    11

  • 安装过程可能会出错,可以多试几次安装命令。

安装truffle

输入以下命令

12

sudo npm install -g truffle

如果输入

truffle version

命令,有以下输出,则表明truffle安装成功:

zcc@ubuntu:~$ truffle version
Truffle v2.0.0

安装Geth客户端

有多种以太坊客户端,安装go-ethereum输入以下命令

13

sudo apt-get install software-properties-common
sudo add-apt-repository -y ppa:ethereum/ethereum
sudo apt-get update
sudo apt-get install ethereum



版权声明:本文为u013137970原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。