Embeddable Lemonade: Building from Source
This guide shows how to build the embeddable lemond and lemonade binaries from source.
For general prerequisites, toolchain setup, and broader development workflows, see Lemonade Development.
Contents:
Default Embeddable Build
The embeddable CMake target builds the server, CLI, and required resource files, then packages them into a single archive. The release workflow uses this target to produce the embeddable archives.
cmake --preset windows -DBUILD_WEB_APP=OFF
cmake --build --preset windows --target embeddable
This produces build\lemonade-embeddable-{VERSION}-windows-x64.zip.
sudo apt-get update
sudo apt-get install -y cmake ninja-build g++ pkg-config libssl-dev libdrm-dev
cmake --preset default -DBUILD_WEB_APP=OFF
cmake --build --preset default --target embeddable
This produces build/lemonade-embeddable-{VERSION}-ubuntu-x64.tar.gz.
Include the Web App
If you want the embeddable build to include the browser UI assets under resources/web-app, enable BUILD_WEB_APP and build the web-app target before embeddable:
cmake --preset windows -DBUILD_WEB_APP=ON
cmake --build --preset windows --target web-app embeddable
cmake --preset default -DBUILD_WEB_APP=ON
cmake --build --preset default --target web-app embeddable
Expected Outputs
The embeddable target produces a single archive in build/:
| Platform | Archive |
|---|---|
| Linux | lemonade-embeddable-{VERSION}-ubuntu-x64.tar.gz |
| Windows | lemonade-embeddable-{VERSION}-windows-x64.zip |
Each archive contains:
lemond(orlemond.exe) — the server binarylemonade(orlemonade.exe) — the CLI binaryLICENSEresources/server_models.jsonresources/backend_versions.jsonresources/defaults.json