Building and linking shared libaries for multipledifferentversions of UNIX

Richard Sharpe sharpe at ns.aus.com
Wed May 16 15:27:47 GMT 2001


At 10:31 AM 5/16/01 -0400, David Collier-Brown wrote:
>Richard Sharpe wrote:
>> 
>> At 08:19 AM 5/16/01 -0400, David Collier-Brown wrote:
>> >Richard Sharpe wrote:
>> 
>> >> 2. Can I get away with defining something like SOLDFLAGS, and simply
pass
>> >> that to $(LD)?
>> >
>> >       Yes, for Solaris and Linux.

Actually, I plan to use $(CC) ...
 
>> OK, but when it comes to installing the shared library, it seems that I
>> have to copy the library as libsmbclient.so.1.0 or something like that.
>> Later ldconfig will create a link from libsmbclient.so.1 to the name above,
>> but for any linking with that library to work, it seems that I also need a
>> link from libsmbclien.so to libsmbclient.so.1 ...
>
>	Yes: This is really a convention, used to allow easy
>	updates.  We create libFoo.so.93 and link it to libFoo.so
>	When we upgrade, we leave 93 in place, add 94
>	and link 94 to libFoo.so
>
>	If an existing program needs version libFoo.so.93, it can get it,
>	but by default it just uses libFoo.so as the thing to link 
>	to.  Does that help?

OK, great explanation. What action do I need to take when I install
libsmbclient.so.x.0? 

Do I need to run ldconfig, and then create the link if it doesn't already
exist?



Regards
-------
Richard Sharpe, sharpe at ns.aus.com
Samba (Team member, www.samba.org), Ethereal (Team member, www.ethereal.com)
Contributing author, SAMS Teach Yourself Samba in 24 Hours
Author, Special Edition, Using Samba






More information about the samba-technical mailing list