Alex,

> -----Original Message-----
> From: Alexander Kanavin <alex.kana...@gmail.com>
> Sent: Monday, February 7, 2022 1:58 PM
> To: Bryan Evenson <beven...@melinkcorp.com>
> Cc: Patches and discussions about the oe-core layer <openembedded-
> c...@lists.openembedded.org>
> Subject: Re: [OE-core] gio-querymodules: error while loading shared
> libraries: libffi.so.6: cannot open shared object file
> 
> Upgrading from one yocto release to a different yocto release with a package
> manager is not supported or tested. You need to replace the image
> completely.
> 

I traced back and I see the gio-querymodules call is inserted in the postrm by 
gio-module-class.bbclass.  Based on the commit notes, the postrm and postinst 
steps are an optimization and are not required to succeed.  Therefore I'd argue 
this should fail gracefully; just because we haven't yet seen this fail during 
minor upgrade attempts doesn't mean it can't.  I'd propose changing the line:

    ${libexecdir}/${MLPREFIX}gio-querymodules ${libdir}/gio/modules/

in gio-module-cache.bbclass to:

    ${libexecdir}/${MLPREFIX}gio-querymodules ${libdir}/gio/modules/ || true

I tested this change and it fixed my upgrade issue.  I still saw the error 
message but libglib-2.0 completed its upgrade successfully.  If you don't see 
any issues with this change, I'll send a patch out later today.

Thanks,
Bryan

> Alex
> 
> On Mon, 7 Feb 2022 at 19:49, Bryan Evenson <beven...@melinkcorp.com>
> wrote:
> >
> > All,
> >
> > I'm having some upgrade issues related to upgrading libglib-2.0-0.  I have a
> device that is based on the morty release that I am upgrading to a build
> based on the dunfell release.  I am using opkg for a package manager.  During
> upgrade I see the error message in the subject.  I think I have an idea of 
> what
> is happening and I'm looking for help on how to fix it.
> >
> > I seeh that libglib-2.0-0 depends on libffi.  Between the morty release and
> the dunfell release, libffi upgraded from libffi6 to libffi7.  When I upgrade 
> my
> system, libffi upgrades from libffi6 to libffi7 prior to libglib-2.0-0 
> upgrading.
> When libglib-2.0-0 upgrades, it calls '/usr/libexec/gio-querymodules
> /usr/lib/gio/modules/' in its postrm script.  This postrm script fails and 
> gives
> the error listed the subject line.  I'm assuming that this fails because gio-
> querymodules depends on libffi6 which is no longer installed.
> >
> > Has anyone run into a similar problem and found a way to fix it?  I've 
> > tried a
> few different ways to force a different upgrade order and so far nothing
> works.
> >
> > Thanks,
> > Bryan
> >
> > 
> >
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#161514): 
https://lists.openembedded.org/g/openembedded-core/message/161514
Mute This Topic: https://lists.openembedded.org/mt/88979156/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to