Home

Awesome

The Emerald ParaTime

CI lint status CI audit status

<!-- markdownlint-disable line-length --> <!-- markdownlint-enable line-length -->

This is the Emerald ParaTime, an official EVM-compatible Oasis Protocol Foundation's ParaTime for the Oasis Network built using the Oasis SDK.

Note

Building

Prerequisites

Rust

Ensure you have Rust and rustup installed on your system. For more details, see Oasis Core's Prerequisites documentation, the Rust section.

The version of the Rust toolchain we use for the Emerald ParaTime is specified in the rust-toolchain file.

The rustup-installed versions of cargo, rustc and other tools will automatically detect this file and use the appropriate version of the Rust toolchain when invoked from the Emerald ParaTime git checkout directory.

To install the appropriate version of the Rust toolchain, make sure you are in an Emerald ParaTime git checkout directory and run:

rustup show

This will automatically install the appropriate Rust toolchain (if not present) and output something similar to:

...

active toolchain
----------------

nightly-2021-08-17-x86_64-unknown-linux-gnu (overridden by '/code/rust-toolchain')
rustc 1.56.0-nightly (0035d9dce 2021-08-16)

Non-SGX Binary

To build the non-SGX binary of the Emerald ParaTime, checkout the appropriate version and run:

cargo build --release

The resulting ELF binary is located at target/release/emerald-paratime.

NOTE: The non-SGX binary is dynamically linked so it may not be portable between machines with different versions of shared libraries.