kdegames/kfouleggs/ miscompile in 3.5 branch
Ryan
p0z3r at earthlink.net
Sun Dec 25 06:29:32 GMT 2005
On Saturday 24 December 2005 03:54, Michael Pyne wrote:
> On Thursday 22 December 2005 17:29, R. wrote:
> > Just updated my svn of kdegames from the 3.5 branch. Compiling it
> > provides many undefined references. The only thing that seemed strange
> > to me is that board.h includes "common/board.h" which doesn't appear to
> > be there any longer.
> >
> > I'm using gcc (GCC) 4.0.2.
>
> I have been fighting with this ever since visibility support was enabled in
> KDE. The libksirtet code doesn't seem to have been properly designed to
> export the classes that need exporting, so the symbols in question aren't
> found when kfouleggs and ksirtet tries to link them in. So this must be
> why you're seeing this, since gcc 4 supports visibility.
Well my quick and dirty personal solution was to edit my Makefile in
kde3.5/kdegames/libksirtet/common/ to include the option of
visibility=default.
CXXFLAGS = -fvisibility=default -Wno-long-long ...
Then rebuild the library, cd back to ksirtet and rebuild there and bingo it
worked.
>
> I gave up after my third commit to "fix" the problem. I suspect you could
> truly fix it by simply KDE_EXPORT'ing every single class in libksirtet
> (which I tried to do by changing the CXXFLAGS to have -fvisibility=default
> in the Makefile.am's there if visibility support was detected). But, I'm
> too worn out for the effort involved.
I tried looking into your suggestion but couldn't get very far with it. I
wonder why this one library gives this problem where as it built fine around
11-29-2005.
>
> Regards,
> - Michael Pyne
More information about the kde-core-devel
mailing list