Shared vs Static (please read)

Chris Adams cmadams at hiwaay.net
Fri Dec 16 03:26:39 UTC 2005


Once upon a time, Peter Jr. Quiring <pquiring at hotmail.com> said:
> I understand that Shared libraries 
> save space and this is good for software that is bundled with the OS, but 
> for third party vendors, static would be a more ideal solution.

They don't just save space on the disk; they save RAM (as shared
libraries can be shared between processes).

> I tried to move a binary built on FC5 to a FC4 system and of course it 
> didn't work (openssl version mismatch).

Another benefit of shared libraries is that a security or bugfix update
to the library only requires a new library; all programs using the
shared library get the fix.  Any programs that used static linking will
have to be rebuilt.  OpenSSL has had several such security updates for
example.

Also, according to the terms of the LGPL (which for example glibc is
licensed under), if link your program statically to an LGPL library, you
need to include the object and/or source code of your program in any
distribution (or an offer for the object and/or source) so that it could
be relinked against the LGPLed library.

-- 
Chris Adams <cmadams at hiwaay.net>
Systems and Network Administrator - HiWAAY Internet Services
I don't speak for anybody but myself - that's enough trouble.




More information about the devel mailing list