JasonCoombs / ascee

C++ implementation of the Argennon smart contract execution environment (AscEE)

Home Page:http://argennon.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

This project can be built on linux. You'll need to have PBC library installed on your system in order to be able to build the project completely.

If you are using an IDE, like CLion, that supports CMake and GoogleTest, after installing PBC you'll just need to clone the project. The IDE will do the rest for you.

If you want to build the project without an IDE you'll need to have CMake >= 3.2 installed on your system.

For building the project without an IDE, first clone its repository:

git clone https://github.com/Argennon-Project/ascee.git

Next, create a build directory and navigate to it:

cd ascee
mkdir cmake-build && cd cmake-build

Now you can build the project:

cmake ..
cmake --build .

If the build was successful, you should be able to run the main executable: ( which is a small test right now)

./ascee_run

For running tests navigate to tests directory and run tests:

cd tests
./Google_Tests_run
./Google_Mock_run

Installing PBC

The PBC library needs the GMP library. So you need to first install the GMP. After installing the GMP download and extract the PBC source and run:

./configure

Install any package that is missing. Then run:

make
make install

By default, the library is installed in /usr/local/lib. On some systems, this may not be in the library path. One way to fix this is to edit /etc/ld.so.conf: add the library path to it, and then run ldconfig.

Then copy the include directory of PBC to your system's include directory:

sudo cp -r <pbc-install>/pbc-0.5.14/include/ /usr/include/pbc

Note: For installing PBC, you might be able to use the script used for the GitHub testing workflow. Navigate to its directory and run install.sh script:

cd ascee/.github/workflows/pbc && /bin/sh install.sh

About

C++ implementation of the Argennon smart contract execution environment (AscEE)

http://argennon.org

License:GNU Affero General Public License v3.0


Languages

Language:C++ 98.5%Language:CMake 1.4%Language:Shell 0.1%