Subject: Re: KDE3 __pure_virtual
To: Nick Hudson <skrll@netbsd.org>
From: Stephen Borrill <netbsd@precedence.co.uk>
List: tech-pkg
Date: 07/30/2002 14:26:36
At 10:03 30/07/02 +0100, Nick Hudson wrote:
> > > > ===> Required package kdeartwork-3.0.2: NOT found
> > > [...]
> > > > /usr/X11R6/qt3/lib/libqt-mt.so.3: undefined reference to
> > > > `__pure_virtual'
> > > > collect2: ld returned 1 exit status
> > >
> > > This is one of the kde packages that doesn't like the version of gcc in
> > > 1.5.x.
> >
> > I've rebuilt qt3-libs and kdeartwork3 with gcc-2.95.3 (from
> > pkgsrc) and it's still the same. Do I need to extend my recompiling, is
> > gcc-2.95.3 still not suitable or is something else amiss?
> >
> > Where is __pure_virtual meant to reside?
>
>On a 1.6B system (gcc 2.95.3)
>
>$ nm -C /usr/X11R6/qt3/lib/libqt-mt.so | grep __pure_virtual
>00769fc0 T __pure_virtual
>
>I suggest that your compile of qt didn't go according to plan.

The problem is bigger than that. __pure_virtual actually lives in libgcc which
isn't being linked in with libstdc++ on 1.5.2.

Compiling up qt3-libs with -lgcc doesn't work as libgcc isn't available as 
a shared library.

This is not a new issue:

http://mail-index.netbsd.org/tech-toolchain/2000/12/07/0000.html

And you've come up against this problem yourself:

http://mail-index.netbsd.org/tech-toolchain/2001/04/03/0002.html

There seems to have been no satisfactory resolution for this problem with 1.5.x

-- 
Stephen