[Ffmpeg-devel] [RFC] dlopen vs linking for external libraries

Roman Shaposhnick rvs
Tue Feb 27 02:15:07 CET 2007


Hi

On Sun, 2007-02-11 at 22:20 +0100, Michael Niedermayer wrote:
> > If the binary distros tried to make features optional and used dlopen()
> > or created separate packages with enabled/disabled features the
> > increased complexity would make it a net loss (yes they have considered
> > that). 
> 
> our dlopen code doesnt look that complex ...
> and noone here has proposed to add separate packages with enabled/disabled
> features ...
> 
> 
> > For a program typically used with video files the space savings
> > matter even less than for most others.
> 
> these statements remind me of http://en.wikipedia.org/wiki/Weasel_words
> 
> in the case here, you make 3 claims (dlopen increases complexity so much
> that its generally not a worth it), (its generally useless) and (even more
> useless for video tools) id like to know who said that? you?
> and why should we care what that person said compared to an actual technical
> statement which could be verified ...

  Sorry for coming to this discussion so late (once again I was
hijacked by the corporate for at least 4 weeks) but the subject
matter has been a sort of a personal pet peeve of mine for quite
some time so I just can't resist...

  The problem is -- dynamic linking just doesn't scale. And anybody
who disagrees with it should take a look at any application that
has to work across different distributions to see that these guys
have to lug around things like private versions of glib and the
fact that these private versions are .so's hardly makes any difference
because for all I care the application could've been statically 
compiled with the same net effect. Yes dynamic linking seemed like
a good idea at the time, but the realities of software engineering
killed it and worst of it is -- nobody is willing to admin that
its dead.

  That said -- dynamic *LOADING* is an entirely different kettle
of fish altogether. It is useful and scalable and should be 
advocated more. Especially for things like codecs where the
"pluggability" of the architecture actually makes a lot of 
difference.

Thanks,
Roman.

P.S. I guess now that our beloved czar of bloat has published 
his view of the subject
(http://people.redhat.com/drepper/no_static_linking.html) I have
to put all of the bad experience I've had with shared linking
in writing somehow...





More information about the ffmpeg-devel mailing list