lvgl_emscripten_wasm

Dies ist eine alte Version des Dokuments!


emscripten Devcontainer

Unter https://dev.to/frorning/introduction-to-webassembly-wasm-4g35 gibt es eine sehr gute Anleitung um einen devcontaier für emscripten aufzusetzen. Mit emscripten lässt sich C++-Code zu lauffähigen WASM-Programmen kompilieren.

Um mit emscripten zu kompilieren, muss man auf dem Rechner einiges installieren und die Umgebung anpassen. Mit dem Devcontainer fällt das weg. Der Devcontainer ist also die ideale Art, um mit emscripten zu entwickeln.

LVGL-Demo für emscripten

Unter https://github.com/lvgl/lv_web_emscripten gibt es das LVGL-Demo, welches sich mit emscripten kompilieren lässt.

Im Dockerfile für den Devcontainer müssen drei Packages installiert werden. Danach lässt sich das Demo tatsächlich kompilieren und das Demo wird auf einer html-Seite angezeigt.

Die drei zusätzlichen Packages sind

    apt-get install -y libsdl2-2.0-0 && \
    apt-get install -y libsdl2-dev && \
    apt-get install -y python3.10-venv && \

Aktueller Stand

Der devcontainer funktioniert sehr gut. Mit dem KI-Assistenten konnte eine eigener lvgl-Dialog mit Schalter und Label erstellt werden. Eine Verbingung zum Homeassistant über mqtt funktioniert. Die Daten aus javascript und dem C-Code für LVGL funktioniert.

Nach dem Neuaufsetzen des DevContainers muss einmal lvgl abgerufen werden. Dazu ist im Terminal folgendes aufzurufen:

    git submodule init
    git submodule update

Der Build muss vorbereitet werden mit:

    mkdir cmbuild
    cd cmbuild
    emcmake cmake ..
    emmake make -j4`
 
    # Es funktioniert dann auch 
    make -j4
  • lvgl_emscripten_wasm.1766438550.txt.gz
  • Zuletzt geändert: 2025/12/22 22:22
  • von joerg