public inbox for gentoo-user@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-user] Cannot mix incompatible Qt library
@ 2024-10-13 14:22 Helmut Jarausch
  2024-10-13 14:45 ` tea
                   ` (3 more replies)
  0 siblings, 4 replies; 6+ messages in thread
From: Helmut Jarausch @ 2024-10-13 14:22 UTC (permalink / raw
  To: gentoo-user

Hi,

I have somewhat broken my GenToo system.
(Nearly) all applications based on qt:5 die with

Cannot mix incompatible Qt library (5.15.13) with this library (5.15.14)

I have re-emerged all packages in dev-qt/ in slot 5, which didn't help.
I've tried strace but couldn't find the culprit.

Does anybody know a means to find an old library or plugin which causes
this problem?

Many thanks for your help,
Helmut


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [gentoo-user] Cannot mix incompatible Qt library
  2024-10-13 14:22 [gentoo-user] Cannot mix incompatible Qt library Helmut Jarausch
@ 2024-10-13 14:45 ` tea
  2024-10-13 15:07 ` Jack Ostroff
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 6+ messages in thread
From: tea @ 2024-10-13 14:45 UTC (permalink / raw
  To: gentoo-user

On Sun, 13 Oct 2024 16:22:16 +0200
Helmut Jarausch <jarausch@skynet.be> wrote:

> Hi,
> 
> I have somewhat broken my GenToo system.
> (Nearly) all applications based on qt:5 die with
> 
> Cannot mix incompatible Qt library (5.15.13) with this library
> (5.15.14)
> kde-*
> I have re-emerged all packages in dev-qt/ in slot 5, which didn't
> help. I've tried strace but couldn't find the culprit.
> 
> Does anybody know a means to find an old library or plugin which
> causes this problem?
> 
> Many thanks for your help,
> Helmut
> 

when i had that problem last it was a style plugin[1] that wasn't
rebuilt automatically. if you have eix installed, you could try
`eix -I -S qt`, or have a look in the kde-* categories.

kind regards, tea

[1] dev-qt/qtstyleplugins if i remember correctly


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [gentoo-user] Cannot mix incompatible Qt library
  2024-10-13 14:22 [gentoo-user] Cannot mix incompatible Qt library Helmut Jarausch
  2024-10-13 14:45 ` tea
@ 2024-10-13 15:07 ` Jack Ostroff
  2024-10-13 16:05   ` Mark Knecht
  2024-10-13 16:13 ` Arthur R.
  2024-10-14  4:24 ` Eli Schwartz
  3 siblings, 1 reply; 6+ messages in thread
From: Jack Ostroff @ 2024-10-13 15:07 UTC (permalink / raw
  To: gentoo-user

On 10/13/24 10:22 AM, Helmut Jarausch wrote:
> Hi,
>
> I have somewhat broken my GenToo system.
> (Nearly) all applications based on qt:5 die with
>
> Cannot mix incompatible Qt library (5.15.13) with this library (5.15.14)
>
> I have re-emerged all packages in dev-qt/ in slot 5, which didn't help.
> I've tried strace but couldn't find the culprit.
>
> Does anybody know a means to find an old library or plugin which causes
> this problem?
>
> Many thanks for your help,
> Helmut
What needs rebuilding is not the underlying libraries but the 
applications which call on them.  Try rebuilding one of the applications 
that generates the error and see if it helps.  If it's not the app 
itself then likely targets are packages in kde-frameworks and  kde-plasma.


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [gentoo-user] Cannot mix incompatible Qt library
  2024-10-13 15:07 ` Jack Ostroff
@ 2024-10-13 16:05   ` Mark Knecht
  0 siblings, 0 replies; 6+ messages in thread
From: Mark Knecht @ 2024-10-13 16:05 UTC (permalink / raw
  To: gentoo-user

[-- Attachment #1: Type: text/plain, Size: 1243 bytes --]

On Sun, Oct 13, 2024 at 8:08 AM Jack Ostroff <
ostroffjh@users.sourceforge.net> wrote:
>
> On 10/13/24 10:22 AM, Helmut Jarausch wrote:
> > Hi,
> >
> > I have somewhat broken my GenToo system.
> > (Nearly) all applications based on qt:5 die with
> >
> > Cannot mix incompatible Qt library (5.15.13) with this library (5.15.14)
> >
> > I have re-emerged all packages in dev-qt/ in slot 5, which didn't help.
> > I've tried strace but couldn't find the culprit.
> >
> > Does anybody know a means to find an old library or plugin which causes
> > this problem?
> >
> > Many thanks for your help,
> > Helmut
> What needs rebuilding is not the underlying libraries but the
> applications which call on them.  Try rebuilding one of the applications
> that generates the error and see if it helps.  If it's not the app
> itself then likely targets are packages in kde-frameworks and  kde-plasma.

If it's a dynamically linked library then ldd -v can possibly assist in
your search.

Isn't there some sort of emerge - p - e - t command that might show
where different versions of the offending older library is getting built?

Or, assuming 5.15.13 is on the system then remove it and then rebuild?

Good luck,
Mark

[-- Attachment #2: Type: text/html, Size: 1611 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [gentoo-user] Cannot mix incompatible Qt library
  2024-10-13 14:22 [gentoo-user] Cannot mix incompatible Qt library Helmut Jarausch
  2024-10-13 14:45 ` tea
  2024-10-13 15:07 ` Jack Ostroff
@ 2024-10-13 16:13 ` Arthur R.
  2024-10-14  4:24 ` Eli Schwartz
  3 siblings, 0 replies; 6+ messages in thread
From: Arthur R. @ 2024-10-13 16:13 UTC (permalink / raw
  To: gentoo-user

[-- Attachment #1: Type: text/plain, Size: 316 bytes --]


On 10/13/24 21:22, Helmut Jarausch wrote:
> Does anybody know a means to find an old library or plugin which causes
> this problem?
Yes, you can use equery <https://wiki.gentoo.org/wiki/Equery> (located 
in gentoolkit package). Command should look something like this:
/equery d =dev-qt/qtcore-5.15.13/

-- 
Arthur

[-- Attachment #2: Type: text/html, Size: 764 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [gentoo-user] Cannot mix incompatible Qt library
  2024-10-13 14:22 [gentoo-user] Cannot mix incompatible Qt library Helmut Jarausch
                   ` (2 preceding siblings ...)
  2024-10-13 16:13 ` Arthur R.
@ 2024-10-14  4:24 ` Eli Schwartz
  3 siblings, 0 replies; 6+ messages in thread
From: Eli Schwartz @ 2024-10-14  4:24 UTC (permalink / raw
  To: gentoo-user


[-- Attachment #1.1: Type: text/plain, Size: 2134 bytes --]

On 10/13/24 10:22 AM, Helmut Jarausch wrote:
> Hi,
> 
> I have somewhat broken my GenToo system.
> (Nearly) all applications based on qt:5 die with
> 
> Cannot mix incompatible Qt library (5.15.13) with this library (5.15.14)
> 
> I have re-emerged all packages in dev-qt/ in slot 5, which didn't help.
> I've tried strace but couldn't find the culprit.
> 
> Does anybody know a means to find an old library or plugin which causes
> this problem?
> 
> Many thanks for your help,
> Helmut


The general issue here is that applications which use Qt can do it via
one of two methods:

- link to Qt regularly, and only require a specific major version, i.e.
  all 5.* versions are valid and work fine.

- link to Qt's private API, which means you must build against a
  specific PV and use that at runtime, and to enforce this, the
  resulting code will perform a check at runtime to see whether you are
  mixing versions, and if you are mixing versions it will error out with
  "Cannot mix incompatible Qt library (5.xx.xx) with this library
  (5.xx.xx)"


You may recognize the latter error message. :)

It is explicitly documented in the Gentoo policy for Qt packaging:
https://wiki.gentoo.org/wiki/Project:Qt/Policies#Dependencies

Packages which use private API headers of Qt *must* depend on a binding
subslot operator to enforce that they are rebuilt every time Qt is
updated. Packages which do NOT use private API headers should never
depend on binding subslot operators, as they should not be rebuilt.

In theory, all packages in ::gentoo should be correctly annotated as
such. Maybe not all of them actually are...

You can detect which ones have the issue. They will link to symbols such
as "XXXXX@Qt_6_PRIVATE_API".

I have a script which can detect that for existing binaries:
https://git.sr.ht/~eschwartz/dotfiles/tree/master/item/bin/pkg-list-linked-libraries

e.g.

pkg-list-linked-libraries -s /usr/lib64 Qt_6_PRIVATE_API

It will report a bunch of results for dev-qt/* packages too, but with a
bit of filtering you can see what's relevant?


-- 
Eli Schwartz

[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 236 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2024-10-14  4:24 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-10-13 14:22 [gentoo-user] Cannot mix incompatible Qt library Helmut Jarausch
2024-10-13 14:45 ` tea
2024-10-13 15:07 ` Jack Ostroff
2024-10-13 16:05   ` Mark Knecht
2024-10-13 16:13 ` Arthur R.
2024-10-14  4:24 ` Eli Schwartz

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox