Unable to cross compile to windows with gir gtk4 since 4.14, working fine in 4.12

Unable to cross compile to windows with gir gtk4 since 4.14, working fine in 4.12
Version: gtk-4.14.4
Build script: (Gentoo crossdev)
sudo FEATURES=“-ipc-sandbox -network-sandbox -pid-sandbox -sandbox -usersandbox” x86_64-w64-mingw32-emerge -auUDN gtk --exclude busybox
(The sandbox features are disabled because they conflict with wine)
Patch file with my changes to allow introspection to work when cross compiling to windows and fix some file chooser problems with posix threads: https://termbin.com/j3vp

I am writting this because I do not know what else to do, I tried everything I could possibly think of to fix this error.

I do not have the header which enables HAVE_DMABUF and still it is failing in dmabuf formats.

May this be a regression?

PD: I have double checked it and in 4.13.9 it is already broken and in 4.12.5-r1 it is working just fine.

I think maybe I should report a bug instead, but I do not know if this is actually a bug or just me doing the things wrong, if someone could point me whenever this is a bug or not I would be very thankful.


DMABUF is a Linux-only feature, it’s enabled because meson found the linux/dma-buf.h header.

Seems like an issue in the cross-compilation environment. I don’t expect mingw32 to look into linux/ headers…

I’m not familiar with Gentoo crossdev, do they have a support forum? That would make more sense to ask there.

Hi, @gwillems I ensured the header does not exist and when I put code between #ifdef HAVE_DMABUF #endif it stops being taken into account so if it is like you said it is probably a gtk4 bug.

Thank you.