Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 7 Nov 2015 02:06:20 +0000 (UTC)
From:      Will Parsons <varro@nodomain.invalid>
To:        freebsd-questions@freebsd.org
Subject:   Re: incompatible Qt library starting LyX
Message-ID:  <slrnn3q5ib.m35.varro@anukis.local>
References:  <slrnn3php9.19i.varro@anukis.local> <n1jjqp$itq$1@ger.gmane.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On  7 Nov 2015, Michael Powell wrote:
> Will Parsons wrote:
>
>> My installation of LyX has stopped working, with a message:
>> 
>> Cannot mix incompatible Qt library (version 0x40806) with this library
>> (version 0x40807) Abort (core dumped)
>> 
>> I had updated some ports a couple of days ago, but nothing that I
>> thought would have affected LyX.  I reinstalled lyx, qt4-corelib, and
>> qt4-gui, but with the same result.  I don't see anything in UPDATING
>> that looks relevant.  Does anyone have any idea how to fix this?
>> 
>> % uname -a
>> FreeBSD anukis.local 9.3-RELEASE-p21 FreeBSD 9.3-RELEASE-p21 #0: Tue Jul
>> 28 08:57:41 UTC 2015    
>> root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC  i386
>> 
>
> You might try locating the binary that executes, then running ldd against 
> it, e.g.: ldd somebinaryexecutable, this will show a list of libraries it 
> was built against. ldd -a somebinaryexecutable will show a little more info 
> which may be useful if you find that a libmap.conf entry may be useful as a 
> temporary work around.

I don't *have* a binary that executes.  I believe that the same binary
that crashes was the same that previously worked.  As I stated, I
rebuilt the LyX port, and the core Qt libraries without effect (I
build ports using portmaster).  Since them, I've tried to install the
binary using "pkg install lyx", with the same result.

% ldd -a /usr/local/bin/lyx | grep Qt
        libQtGui.so.4 => /usr/local/lib/qt4/libQtGui.so.4 (0x28e7f000)
        libQtCore.so.4 => /usr/local/lib/qt4/libQtCore.so.4 (0x29a6b000)
/usr/local/lib/qt4/libQtGui.so.4:
        libQtCore.so.4 => /usr/local/lib/qt4/libQtCore.so.4 (0x29a6b000)
/usr/local/lib/qt4/libQtCore.so.4:

> If you use binary package management (pkg), possibly there is an error in 
> how they were built and a PR with this information would be helpful to the 
> powers that be. I only build through ports and know next to nothing about 
> binary package(s).

I normally build ports using portmaster, but as I said, trying to
directly install the binary using pkg install didn't help.

> I seem to recall that the huge Qt monolithic was broken up into many pieces, 
> and perhaps it's one, or more, of the other pieces that are subdependencies 
> of a Lynx dependency and that's where the mismatch is. So maybe Lynx was 
> built against the right libs but some other dependency was still linked 
> against a crufty old one.

Perhaps, but I don't know how to track it down.

The installed versions of libQtCore and libQtGui seem to be 4.8.7,
which I suppose corresponds to the version 0x40807 in the error
message.  I don't know how to identify how version 4.8.6 is coming
into the picture.

> I don't consider libmap.conf to be a fix, per se - better to find the items 
> linked against the old lib(s) and rebuild it against the new lib(s) imho.

-- 
Will




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?slrnn3q5ib.m35.varro>