SILC Client 1.1 Beta4
jayjwa
jayjwa at atr2.ath.cx
Tue May 22 07:37:17 CEST 2007
-> I'm not having any luck with Beta4. Beta2 seemed OK, I missed 3, but 4 will
-> not build the silc binary (./configure && make ):
-> /tmp/silc-client-1.1-beta4/apps/irssi/src/silc/core/client_ops.c:2337: undefined reference to `silc_pkcs_get_type'
-> /tmp/silc-client-1.1-beta4/apps/irssi/src/silc/core/client_ops.c:2338: undefined reference to `silc_pkcs_get_type'
-> /tmp/silc-client-1.1-beta4/apps/irssi/src/silc/core/client_ops.c:2367: undefined reference to `silc_packet_stream_get_stream'
-> /tmp/silc-client-1.1-beta4/apps/irssi/src/silc/core/client_ops.c:2367: undefined reference to `silc_socket_stream_get_info'
-> ../silc/core/libsilc_core.a(client_ops.o): In function `silc_parse_channel_public_keys':
Today I hit this again with 1.1 Beta5, but I figured out what the problem was.
As it turns out, either from an old silc-client or silc-server, there used to
be a libsilc.so (I forget the version(s) ). I had this in /usr/local/lib. When
the final silc binary is linked, it's linked with libtool, and ends up
requesting "-lsilc". Since libsilc.so existed, you could see it at the tail
end of the link command; I thought this odd at the time, but didn't pay any
more attention to it.
So ld, given -lsilc
was happy grabbing /usr/local/lib/libsilc.so,
when in reality the binary requires
silc-client-1.1-beta5/lib/.libs/libsilc.a
While both are called "libsilc", they are vastly different. Depending on
LDFLAGS, one or the other might be grabbed by ld. Prehaps linking with an
explicit path would have fixed it also, but simply killing off libsilc.* from
usr/local/lib fixed the problem. Neither my current silc or silcd seem to
require these.
More information about the silc-users
mailing list