lvgl-rs-wasm/README.md

1.4 KiB

LVGL Rust to WASM

Example of LVGL in Rust compiling to WASM. The same project can run natively and in the browser.

Access the live version here.

Setup

  • Install Emscripten
# Get the emsdk repo
git clone https://github.com/emscripten-core/emsdk.git

# Enter that directory
cd emsdk

# Download and install the latest SDK tools.
./emsdk install latest

# Make the "latest" SDK "active" for the current user. (writes .emscripten file)
./emsdk activate latest

# Activate PATH and other environment variables in the current terminal
source ./emsdk_env.sh

https://emscripten.org/docs/getting_started/downloads.html

  • Compile SDL2:
$ embuilder.py build sdl2

Compiling

Compile the Web version:

make web

Compile the native version:

make native

Running

To access the web version you need to serve the static files as web pages locally. We use python3 for that. If you have Python 3 installed, you can run:

make serve

Now you can access locally the project running at http://localhost:8000/lvgl_example.html .

For running natively, you can do:

cargo +nightly run --release

References