Hi Alex,

thank you for your mail. Contributions and ideas for WebAssembly are always welcome.

For us, PySide for WebAssembly is currently on the backburner since we do not see a way of building the support libraries.

The task basically boils down to:

- Building shiboken_generator on the host
- Building the support libraries (libshiboken/libpyside/libpysideqml) against CPython
- Building the Python modules (shibokenmodule, Qt modules)

If one day CPython provides a way of building modules and Qt and CPython settle on one EMSDK version, it all could be done using the normal cross-building support for PySide which exists for embedded platforms (PYSIDE-802).

Pyodide is an option for building Python modules; it might be possible to get a Qt module to build by creating a setup.py (see https://codereview.qt-project.org/c/pyside/pyside-setup/+/443740 ). We changed the shiboken_generator to have it generate the defines of the Qt configure system into the code so that the generated code can be used for different configuration options of Qt (some classes are missing in WebAssembly). This would require Qt and Pyodide to use compatible EMSDKs.

Pyodide cannot seem to build the support libraries though, and also does not provide a build environment for use; it merely unpacks it temporarily when building modules.

A mix of Pyodide and CPython is also conceivable, but then all three would have to settle on an un-patched EMSDK version.

Ideas how to progress with this would be appreciated.

Regards,
Friedemann

Some links:

Qt Contribution guidelines: contribute.qt-project.org/guidelines
Qt for WASM https://doc.qt.io/qt-6/wasm.html


--
Friedemann Kleint
The Qt Company GmbH
_______________________________________________
PySide mailing list
PySide@qt-project.org
https://lists.qt-project.org/listinfo/pyside

Reply via email to