EOS Dev Guide 0x00

EOS Dev Guide 0x00

This guide book will guide you to build your own test net, develop EOS contracts and do other research on it.

ref: https://github.com/EOSIO/eos/wiki/Tutorial-Getting-Started-With-Contracts

pre-requisite

before start, make sure you have met the building requirement since it will download some dependence and generate many intermediate files.

ref:https://github.com/EOSIO/eos/wiki/Local-Environment

supported os

the automated build script now only support the following os:

Amazon 2017.09 and higher.
Centos 7.
Fedora 25 and higher (Fedora 27 recommended).
Mint 18.
Ubuntu 16.04 (Ubuntu 16.10 recommended).
MacOS Darwin 10.12 and higher (MacOS 10.13.x recommended).

memory requirement

8GB RAM free required
20GB Disk free required

Build Local Env

$ git clone https://github.com/EOSIO/eos

Then cd to the directory, and checkout to a specific version if you want.
For example, if you want to reproduce the RCE vulnerability reported and fixed on May 29, checkout to this commit:

$ cd eos
$ git checkout 4938c6d06e08ed37c05d2de0fd1419200e212c45 

Because the fixing commit was ea89dce21d13d41a22b3512a27be97b4be9df755, and 4938c6 was the very last one before the fix.

Then run the automated build script:

$ ./eosio_build.sh

Just follow the instructions, and type 1 when it's asking whether do you want to install the dependence. All the dependence are required, so we just let it install.

If everything went cool, you are supposed to see this:

And there will be a new folder 'build' under 'eos'. You should see some executables under eos/build/programs, like nodeos and cleos.

Run the tests

As stated in the success message:
'To verify your installation, run the following commands:'

$ export PATH=${HOME}/opt/mongodb/bin:$PATH
$ /home/ubuntu/opt/mongodb/bin/mongod -f /home/ubuntu/opt/mongodb/mongod.conf &
$ cd /home/ubuntu/eos/build; make test

This it, I decided to separate the whole procedure to several short parts so that you can check it at any progress.

See you in the next post.

Peace