A quick tutorial on how you can get started with WASI - The WebAssembly System Interface - in four simple steps.
First, you're going to make sure you have Rust installed on your system:
curl https://sh.rustup.rs -sSf | sh
Second, you're going to get Rust
nightly version and add the
wasm32-wasi target on your toolchain.
rustup update; rustup toolchain install nightly; rustup target add wasm32-wasi --toolchain nightly;
Third, you're going set up a WASI runtime in which you can run your WASI-targeting applications.
wasmtime is one of your options:
git clone --recurse-submodules https://github.com/CraneStation/wasmtime.git; cd wasmtime; cargo build --release; cp target/release/wasmtime ~/.bin/; # ^ Or another directory that is in your executable $PATH cd ..;
Fourth, you're going to create a WASI project and run it:
cargo init hello-wasi; cd hello-wasi; sed -i -e 's/world/WASI/' src/main.rs; cargo +nightly build --target wasm32-wasi; wasmtime target/wasm32-wasi/debug/hello-wasi.wasm; Hello, WASI!