9 releases

0.2.0-alpha.7 Dec 11, 2023
0.2.0-alpha.6 Dec 8, 2023
0.2.0-alpha.4 Nov 28, 2023
0.2.0-alpha.3 Oct 23, 2023
0.1.9 Aug 9, 2022

#3 in #pruntime

Download history 5/week @ 2024-07-21 19/week @ 2024-07-28 77/week @ 2024-09-29

246 downloads per month

Apache-2.0

81KB
2K SLoC

Phala Blockchain

Build

Phala Network is the offchain computing protocol, powering the decentralized execution layer for AI agents.

Native Build

Dependencies

Expand
  • System dependencies

    • Ubuntu (tested with 22.04)
    apt install -y build-essential pkg-config libssl-dev protobuf-compiler
    
    • macOS
    brew install protobuf
    
    • See here for more protobuf installation options
  • Rust

    curl https://sh.rustup.rs -sSf | sh
    
  • Substrate dependencies:

    git submodule update --init
    sh ./scripts/init.sh
    
  • LLVM 14

    wget https://apt.llvm.org/llvm.sh
    chmod +x llvm.sh
    ./llvm.sh 14
    

Build the blockchain and bridge

Make sure you have Rust and LLVM-10 installed.

Note for Mac users: you also need llvm and binutils from Homebrew or MacPort, and to add their binaries to your $PATH

Run git submodule update --init to fetch submodules before build if you haven't add option --recursive when clone code.

cargo build --release

The build script enforces LLVM-10 or newer is used. LLVM-10 is needed because of the wasm port of rust crypto library, ring. We have to compile the C code into wasm while keeping the compatibility with the current rustc.

Run

Please refer to the run scripts

Sub-pages

  • RPC: RPC documentations
  • Test: How to test the components

External Resources


lib.rs:

This crate provides some instrumentation to write sidevm programs. It is built on top of the Sidevm ocalls.

Dependencies

~9–16MB
~218K SLoC