List Info

Thread: Re: SILC Client 1.1 Beta4




Re: SILC Client 1.1 Beta4
country flaguser name
United States
2007-05-22 00:37:17

-> 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_o
ps.c:2337: undefined reference to `silc_pkcs_get_type'
->
/tmp/silc-client-1.1-beta4/apps/irssi/src/silc/core/client_o
ps.c:2338: undefined reference to `silc_pkcs_get_type'
->
/tmp/silc-client-1.1-beta4/apps/irssi/src/silc/core/client_o
ps.c:2367: undefined reference to
`silc_packet_stream_get_stream'
->
/tmp/silc-client-1.1-beta4/apps/irssi/src/silc/core/client_o
ps.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.


____________________________________________________________
___
Info:    https://lists.silcnet.org/mailman/listinfo/silc-users
Archive: https:
//lists.silcnet.org/pipermail/silc-users
FAQ:     http://silcnet.org/su
pport/faq/

Re: SILC Client 1.1 Beta4
country flaguser name
Slovakia
2007-05-22 01:18:34
: 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, 
:
It's difficult to say why it was doing that without seeing
how the 
silc-client was configured with ./configure.  If it found
pkg-config files 
for the SILC libraries from your system it would use them
even though they 
are too old version because current beta5 doesn't yet have a
check for 1.1 
version specifically (it doesn't check version).  In this
case it would 
have then linked with the libraries from your system.

If this wasn't the case then it in fact should have taken
the library from 
lib/ because there is explicit -L for the linker when
compiling the 
lib/ subdirectory.  In this case -Llib/ -lsilc should in
fact take it from 
lib/ if lib/ was compiled.

Anyway, good thing this happened because I had forgotten to
add the 
version check for the pkg-config files to configure.

	Pekka
____________________________________________________________
____________
 Pekka Riikonen                                 priikone at
silcnet.org
 Secure Internet Live Conferencing (SILC)       http://silcnet.org/

____________________________________________________________
___
Info:    https://lists.silcnet.org/mailman/listinfo/silc-users
Archive: https:
//lists.silcnet.org/pipermail/silc-users
FAQ:     http://silcnet.org/su
pport/faq/

[1-2]

about | contact  Other archives ( Real Estate discussion Medical topics )