tech-pkg archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

undefined reference in libkdecore.so (versioned symbol?)



I recently tried to compile a package that uses libkdecore.so (kmymoney2 from
pkgsrc-wip) and ran into a problem when it was linking:

...
/space/netbsd/pkgsrc.base/wip/wipwip/kmymoney2-devel/work/.buildlink/lib/libkdec
ore.so: undefined reference to `idna_to_ascii_4i%LIBIDN_1.0@localhost'
/space/netbsd/pkgsrc.base/wip/wipwip/kmymoney2-devel/work/.buildlink/lib/libkdec
ore.so: undefined reference to `idna_to_unicode_44i%LIBIDN_1.0@localhost'
...

If I look at libidn.so it seems to have the needed symbol:
# nm /usr/pkg/lib/libidn.so | grep idna_to_ascii
00003f94 T idna_to_ascii_4i
00004344 T idna_to_ascii_4z
0000455c T idna_to_ascii_8z
000045bc T idna_to_ascii_lz

but libkdecore.so refers to it slightly differently, with the @LIBIDN_1.0:
poe: {193} nm /usr/pkg/lib/libkdecore.so | grep idna_to_ascii
         U idna_to_ascii_4i@@LIBIDN_1.0

I'm not really clear on how symbol versioning is supposed to work, but
I was under the rather vague impression that w/o a specific version on
the symbol it was supposed to match anything.
So, what's at fault for this not working, the kdelibs package (version 3.5.10),
the libidn package (version 1.8) or ld (NetBSD 5ish, version 2.16.1)?

eric


Home | Main Index | Thread Index | Old Index