Details
-
Task
-
Resolution: Unresolved
-
P2: Important
-
None
-
None
-
None
Description
Qt for WebAssembly deployment: wasmdeployqt
wasmdeployqt should provide a convenient way of making a Qt application which uses shared libraries ready for web deployment. Unlike Qt deployment on other platforms this does not involve creating an application bundle with Qt libraries (or similar). Instead, wasmdeployqt creates
Wasmdeployqt should provide a straightforward out-of-the box deployment experience, but also offer options for customizing the deployment.
wasmdeployqt can be used directly as a standalone utility, or can be called from the cmake deployment code. If used as a standalone utility then the build flow is:
- qt-cmake
- ninja
- wasmdeployqt
Qt for WebAssembly shared libraries deployment flow
Notes
- During development it is common to run the web server on the build machine, which simplifies deployment and enables shortcuts such as crating a symlink to the Qt libraries, instead making a copy.
- The preload file list typically contains a list of Qt plugins and QML imports. Emscripten handles downloads of
Wasmdeployqt deployment flow.
Notes:
- A simple implementation for step (1) (determine plugins) is to include all available plugins
- Step(3) behavior (copy or symlink) can be controlled via command-line switches.