Building everiToken

Fetch EVT Code

First you need to fetch evt source code here:, you can run:

git clone
git submodule update --init

This will fetch evt and submodules as well.

Fetch and Build Dependencies

  1. To compile evt, you need to use GCC Toolset 7.x. In CentOS7, you can install devtoolset-7 to get it, which is included in Centos Software Collections Repository.

  2. You need to use yum or apt to install these packages: git autoconf automake libtool bzip2-devel openssl-devel gmp-devel python-devel lz4-devel libzstd-devel.

  3. You need to compile and install CMAKE, you can fetch it from here:

  4. You need to compile and install Boost library 1.66, you can get it from here:

    ./b2 install
  1. You need to compile and install secp256k1-zkp, you can clone repo from here:

  2. You need to compile and install gflags, you can clone repo from here:, and you can build dynamic library instead of static library:

    cmake /path/to/gflags

After build all these libraries above, you can then build evt.

cmake /path/to/evt
make evtd evtc evtwd

Start single node

Then you should run single test node:

sudo ./evtd -e --http-validate-host=false --charge-free-mode --plugin=evt::postgres_plugin --plugin=evt::history_plugin --plugin=evt::history_api_plugin --plugin=evt::evt_link_plugin --plugin=evt::chain_api_plugin --plugin=evt::evt_api_plugin --producer-name=evt --delete-all-blocks -d ./ --postgres-uri=postgresql://postgres@localhost:5432/evt

If successful, evtd will display some information, starting with::

info  2019-01-08T05:47:40.578 thread-0  chain_plugin.cpp:300          plugin_initialize    ] initializing chain plugin
info  2019-01-08T05:47:40.579 thread-0  chain_plugin.cpp:420          plugin_initialize    ] Deleting state database and blocks
warn  2019-01-08T05:47:40.638 thread-0  chain_plugin.cpp:562          plugin_initialize    ] Starting up fresh blockchain with default genesis state.
info  2019-01-08T05:47:40.779 thread-0  postgres_plugin.cpp:532       plugin_initialize    ] initializing postgres_plugin
info  2019-01-08T05:47:40.779 thread-0  postgres_plugin.cpp:537       plugin_initialize    ] Deleted all blocks: wiping postgres database on startup
info  2019-01-08T05:47:40.780 thread-0  postgres_plugin.cpp:554       plugin_initialize    ] connecting to postgresql://postgres@localhost:5432/evt
info  2019-01-08T05:47:41.035 thread-0  postgres_plugin.cpp:407       wipe_database        ] wipe database
info  2019-01-08T05:47:41.722 thread-0  http_plugin.cpp:527           plugin_initialize    ] configured http to listen on
info  2019-01-08T05:47:41.722 thread-0  net_plugin.cpp:3018           plugin_initialize    ] Initialize net plugin

Start the Wallet Manager

In the first terminal windows, start evtwd, the wallet management application.

./evtwd --http-server-address

If successful, evtwd will display some information, starting with:

1692293ms thread-0   wallet_plugin.cpp:41          plugin_initialize    ] initializing wallet plugin
1692293ms thread-0   http_plugin.cpp:141           plugin_initialize    ] host: port: 9999 
1692294ms thread-0   http_plugin.cpp:144           plugin_initialize    ] configured http to listen on
1692294ms thread-0   http_plugin.cpp:156           plugin_startup       ] start processing http thread
1692294ms thread-0   http_plugin.cpp:213           plugin_startup       ] start listening for http requests
1692294ms thread-0   http_plugin.cpp:218           plugin_startup       ] http io service exit
1692294ms thread-0   wallet_api_plugin.cpp:70      plugin_startup       ] startin

It says the wallet is listening on This indicated evtwd is running correctly.

Continue Reading: Run A Node Using Docker