This section will guide you how to install the software required for developing smart contracts using the Oasis SDK. After successfully completing all the described steps you will be able to start building your first smart contract on Oasis!
If you already have everything set up, feel free to skip to the next section.
The following is a list of prerequisites required to start developing using the Oasis SDK:
rustup cannot be installed alongside a distribution packaged Rust version. You will need to remove it (if it's present) before you can start using rustup.
Install it by running:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
If you want to avoid directly executing a shell script fetched the
internet, you can also download
rustup-init executable for your platform
and run it manually.
This will run
rustup-init which will download and install the latest stable
version of Rust on your system.
Rust Toolchain Version
The version of the Rust toolchain we use in the Oasis SDK is specified in the rust-toolchain file.
The rustup-installed versions of
rustc and other tools will
automatically detect this file and use the appropriate version of the Rust
toolchain. When you are building applications that
use the SDK, it is recommended that you copy the same rust-toolchain file to
your project's top-level directory as well.
To install the appropriate version of the Rust toolchain, make sure you are in the project directory and run:
This will automatically install the appropriate Rust toolchain (if not present) and output something similar to:
nightly-2021-11-04-x86_64-unknown-linux-gnu (overridden by '/code/rust-toolchain')
rustc 1.58.0-nightly (baba6687d 2021-11-03)
WebAssembly Target Support
In order to be able to compile Rust programs into WebAssembly you need to also install the WebAssembly target by running:
rustup target add wasm32-unknown-unknown
Required if you want to use the Go Client SDK.
At least version 1.17.3 is required. If your distribution provides a new-enough version of Go, just use that.