inline vtable problems with latest kdelibs snapshot?
faure at kde.org
Tue May 9 18:13:02 BST 2006
On Tuesday 09 May 2006 19:05, Friedrich W. H. Kossebau wrote:
> after I updated to the most new kdelibs snapshot some of the test in
> kdeutils/khexedit/lib/tests do not link any longer, but complain about
> undefined vtables, e.g.:
> --- 8< ---
> Linking CXX executable kebcdic1047charcodeckcharcodeciftest
> In function `KEBCDIC1047CharCodec':
> undefined reference to `vtable for KHE::KEBCDIC1047CharCodec'
> collect2: ld returned 1 exit status
> make: *** [khexedit/lib/tests/kebcdic1047charcodeckcharcodeciftest] Fehler
> make: ***
> Fehler 2
> make: *** [all] Fehler 2
> --- 8< ---
> Any idea what could have triggered this?
Yes, visibility is hidden by default again, on compilers that support it (notably gcc-4.0)
For your test to link, you need the library it's linking with (libkhexedit or something)
to export the symbols that the test uses - best done using a KHEXEDIT_EXPORT
defined to KDE_EXPORT in a khexedit_export.h file, so that people compiling on
windows can later on alter that header file to redefine the macro more precisely.
Then insert KHEXEDIT_EXPORT between "class" and "KEBCDIC1047CharCodec" ;)
David Faure, faure at kde.org, sponsored by Trolltech to work on KDE,
Konqueror (http://www.konqueror.org), and KOffice (http://www.koffice.org).
More information about the kde-core-devel