#bridge #immutability #phala #blockchain #environment #pruntime #variables

immutable_env

Immutable environment variables which are taken from the environment when the program starts and never change

1 unstable release

0.1.0 May 23, 2023

#9 in #pruntime

MIT license

2KB

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

Dependencies

~240–690KB
~16K SLoC