Re: Bug#953643: gdk-pixbuf FTBFS on powerpc due to "ModuleNotFoundError: No module named 'giscanner._giscanner'"
On Wed, 11 Mar 2020 at 01:20:56 -0400, Daniel Kahn Gillmor wrote:
> ModuleNotFoundError: No module named 'giscanner._giscanner'
I think this is the python3.8 transition, combined with powerpc not having
built gobject-introspection since #950267 was fixed.
The powerpc binary for gobject-introspection only contains a _giscanner.so
for python3.7 (which was current when it was built), but is run with the
default python3, which is now python3.8. It should have had a dependency
on python3 (<< 3.8) to represent that, but the correct dependency wasn't
generated due to a packaging bug (#950267, now fixed).
A powerpc porter might be able to rescue this by doing a manual binNMU
of powerpc's outdated source version of gobject-introspection against
python3.8-as-default, or by building gdk-pixbuf with python3 (<< 3.8)
installed, or something.
gobject-introspection is currently unbuildable on powerpc because it needs
a newer glib2.0, which needs python3-gi, which needs libffi, and the buildd
infrastructure thinks libffi is Not-For-Us on powerpc, apparently because
The versions of gobject-introspection, pygobject, glib2.0 and libffi
are currently more tightly coupled than usual because rebuilding against
the new libffi changed gobject-introspection's ABI (on at least arm64),
so we've had to sprinkle extra Depends and Breaks through the affected
packages to force them all to be upgraded in lockstep (you need to either
have all those packages from before the transition, or all those packages
from after the transition, but not a mixture). In an attempt to keep
things down to a manageable level of complexity, the Depends/Breaks are
common to all architectures, not just arm64 (and tbh having both libffi6
and libffi7 in the same process space is probably bad news anyway,
even on architectures where its ABI didn't break).