Edit: The key was using msys2. After installing Gtk3 and PyGObject following the PyGObject guide for msys2 everything worked fine. Packaging with PyInstaller and nuitka was fine.
I've been developing an image halftoning app for a while using GTK on Linux, thinking GTK is cross platform, and delaying testing it on Windows for quite some time.
Today I decided to finally install Windows 10 (for the first time in more than a decade) on a separate machine and see what works and what does not.
For the past few hours I've been through hell trying to get GTK3 to work. I've followed multiple guides, none of which worked, including wingtk.
Furthermore, even if I successfully compile (or install) GTK, would it be possible to package it all up using something like PyInstaller or nuitka.
At this point I'm thinking of keeping the functions and writing a whole new GUI in Tk for the Windows port, as at least that seems to work.
Am I missing something?
PyQT and WxPython have much better cross platform support. If you plan to rewrite your app anyway, maybe take a look at them to see if they fit your needs.
PyQT / PySide are huge, but they have been very good in my experience coding cross platform desktop programs. macOS, Windows and Linux (even on ARM) are very well supported.