On Wed, 1 Aug 2001, J . A . Magallon wrote:
> The link fails even when detecting libpspell in configure:
> configure:8576: checking for new_pspell_manager in -lpspell
> configure:8603: gcc -o conftest -pthread -O2 -march=i686 -I/usr/include/gtk-1.2
> -I/usr/include/glib-1.2 -I/usr/lib/glib/include -I/usr/X11R6/include conftest.
> c -lpspell >&5
> /usr/lib/gcc-lib/i586-mandrake-linux-gnu/2.96/../../../libpspell.so: undefined r
> eference to `ios virtual table'
[...]
> If you use libpspell wit C++, there is no problem 'cause the linker adds the
> libstdc++ lib. But if you link with C linker...
I believe the problem to be libpspell related.
[root@paraplapla gbeauchesne]# ldd /usr/lib/libpspell.so
libltdl.so.3 => /usr/lib/libltdl.so.3 (0x40039000)
libpspell-modules.so.1 => /usr/lib/libpspell-modules.so.1
(0x4003f000)
libc.so.6 => /lib/libc.so.6 (0x40041000)
libdl.so.2 => /lib/libdl.so.2 (0x4017d000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x2aaaa000)
And, when upgrading libpspell4 with a suitable ltmain.sh (actually
matching its ltconfig -- 1.4a):
[gb@no pspell-.12.2]$ ldd interface/.libs/libpspell.so
libltdl.so.3 => /usr/lib/libltdl.so.3 (0x40030000)
libpspell-modules.so.1 =>
/home/gb/rpm/BUILD/pspell-.12.2/modules/.libs/libpspell-modules.so.1
(0x40036000)
libstdc++-libc6.2-2.so.3 => /usr/lib/libstdc++-libc6.2-2.so.3
(0x40038000)
libm.so.6 => /lib/libm.so.6 (0x40080000)
libc.so.6 => /lib/libc.so.6 (0x400a4000)
libdl.so.2 => /lib/libdl.so.2 (0x401e1000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x2aaaa000)
libstdc++ appeared in the list of libs to load.
Summary: libpspell4-0.12.2-1mdk DSO were linked with gcc and not with c++.