Linux wheels with manylinux2010

That’s progress! Installing the wheel worked fine and we can now load wx:

$ python3.8
Python 3.8.13 (default, Apr 19 2022, 02:32:06) 
[GCC 11.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import wx
>>> print(wx.version())
4.2.0 gtk3 (phoenix) wxWidgets 3.2.0

That’s progress!

Unfortunately, @Robin was right that there are still Glib version incompatibilities that might be showstoppers:

>>> app = wx.App()

(python3.8:4795): GLib-GIO-ERROR **: 10:19:48.441: Settings schema 'org.gnome.settings-daemon.plugins.xsettings' does not contain a key named 'antialiasing'
Trace/breakpoint trap (core dumped)

This is on an x64 VM running a clean, updated Ubuntu 22.04, and Python3.8 from sudo apt install

For what is worth, I was able to build a manylinux_2_31 wheel in ubuntu 20.04 and a manylinux_2_35 wheel in ubuntu 22.04 from the regular master branch simply running:

auditwheel repair --plat manylinux_2_35_x86_64 --only-plat -w dist dist/wxPython-*.whl (replace with 2_31 on 20.04)

after building a platform specific wheel the usual way with python build.py bdist_wheel

But unfortonately neither of them --in particular the 2_35, which at the time of writing is the most new manylinux spec-- runs on a current debian stable (bookworm). These are the some of the critical errors I get on start up:

g_once_init_leave: assertion 'result != 0' failed
g_type_register_dynamic: assertion 'parent_type > 0' failed
g_type_interface_add_prerequisite: assertion 'G_TYPE_IS_INTERFACE (interface_type)' failed

You can download the wheel file with pip download --extra-index-url https://pkgs.dev.azure.com/jorgemoraleda/wxPythonMeticy/_packaging/release_artifacts/pypi/simple wxPythonMeticy (For why it is called wxPythonMeticy and not wxPython see wxPythonMeticy: A release to PyPI of the latest master branch code