Home

Awesome

LVGL Rust to WASM

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

Access the web live version here.

Project Running Natively

Setup

# 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

$ 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 run --release

References