Shared vs Static (please read)
Arjan van de Ven
arjan at fenrus.demon.nl
Fri Dec 16 08:11:22 UTC 2005
On Thu, 2005-12-15 at 23:48 +0000, Peter Jr. Quiring wrote:
> I'm a C++ programmer that is porting from Windows to the Linux world. So
> far things are great. I've recently tried to use the -static option with
> gcc to generate binaries that are more portable, and so far it works.
the problem is that due to a bunch of technicalities, -static binaries
are LESS portable in linux, not more portable.
http://people.redhat.com/drepper/no_static_linking.html
However there is a middle ground; static link only the lib(s) that are a
real portability problem, eg libstdc++, but not the rest. (at which
point you need to be careful wrt the LGPL already but I don't know the
exact details of the libstdc++ license, it may well have an exception
for this).
Linking openssl static sounds like a nightmare from a security update
pov.... it's better to avoid it anyway in non-core-OS software due to
the very unstable ABI.
btw the way to only link libstdc++ static is this:
-Wl,-static -lstdc++ -Wl,-dynamic
More information about the devel
mailing list