Static linking considered harmful

Arjan van de Ven arjan at fenrus.demon.nl
Fri Nov 24 19:28:54 UTC 2006


On Fri, 2006-11-24 at 19:52 +0100, Axel Thimm wrote:
> On Wed, Nov 22, 2006 at 12:14:25PM -0800, Ulrich Drepper wrote:
> > As for the "works everywhere" argument:
> > 
> > - Jakub and others already pointed out that this is mostly a myth.
> >   Every non-trivial program needs services which require dynamic
> >   linking.  glibc's dependencies (iconv, nss, idn, ...) are prominent.
> >   But there are an increasing number of other projects which need it.
> >   Just look for all the DSOs linked against (explicitly or implicitly)
> >   libdl.  This includes basically all GUI stuff, all security apps.
> >   Heck, even ncurses falls in this category.  All of these are out
> >   when it comes to static linking.
> 
> Sorry, that's reality, not a myth.


ok so as an outsider I see two camps

1) "Static linking is a technical problem and should be discouraged"
and
2) "We want portable-to-other distros"

the 2) camp then makes a step and considers static linking as the way to
go there. (probably because on other systems that was the case)

these two camps are not in fundamental conflicting positions. Only once
the step "static linking is the way to make things portable" is made are
the positions in conflict.

Maybe the real answer is something entirely different: if it was easy to
automatically package up a binary and all the libs it needs into
something that's self executable/self contained... that would take care
of the requirement too. Maybe some answer is the real thing

However I think it's very important to separate out "we want portable"
and "we require static linking", since just about ALL arguments for
static linking actually were not about static linking but about wanting
portable.





More information about the fedora-devel-list mailing list