Supported Operating Systems
The Phat Contract uses Rust-based ink! language, and is finally compiled to WebAssembly (WASM for short).
- You can get your contract compiled on both macOS and Linux distributions (we use Ubuntu 20.04 as the default Linux distribution);
- For Windows users, we recommend to setup a Linux development environment with virtual machine (video tutorial).
Phat Contract shares exactly the same toolchains as ink!.
A prerequisite for compiling Phat Contracts is to have Rust and Cargo (Rust’s project manager) installed.
The Rust official recommends using
rustup tool to install and manage different Rust versions. Here’s an installation guide.
We recommend installing
cargo-contract. It’s a CLI tool that helps set up and manage contracts written with ink!.
As a pre-requisite for the tool, you need to install the binaryen package, which is used to optimize the WebAssembly bytecode of the contract.
- For macOS users, we recommend installing it with Homebrew package manager.
brew install binaryen
- For Ubuntu users, we recommend downloading the latest release](https://github.com/WebAssembly/binaryen/releases) since apt can get you an outdated version.
Then you can install the
# install Rust nightly toolchain for contract compilation rustup install nightly rustup component add rust-src --toolchain nightly # install cargo-contract tool cargo install cargo-dylint dylint-link # use the `--force` to ensure you are updated to the most recent version cargo install cargo-contract --force