On Sun, 2009-12-06 at 20:36 +0000, Andrew Church wrote:
> >As far as I know and remember, the way we're doing now -force libavi*
> >and friends to be linked into the core- is due to the fact that
> >1. we don't want to install libavi into the system lib directory. Fair
> >enough, and that shouldn't change.
> >2. we can't static link it to every module which needs it (pointless
> >duplication and most important, it just doesn't work)
> See, that "pointless duplication" comment is exactly what I was talking
> about when I mentioned unnecessary optimization. (: 

And that's also the part that worries me the least ;)

Quite frankly, my final objective is to push down to the appropriate
level the dependecies (and it's also seems we're in good agreement
that's a Good Thing ;)), and used shared libs it's just a way of doing
this. If it'll work using static linking, I'm fine either.

> (*) Of course, "clean" can mean lots of different things, but to me, the
>     "cleanest" method of handling this would be to just link the static
>     libs into each module;

If the linker doesn't complain seeing the same symbol twice (one, say,
in import_avi.so and one in multiplex_avi.so), I'm just happy with that.
I've to admint I'm much less proficient in ELFish as I'd like to be, but
AFAIR the linker will complain.

> With respect to "just doesn't work", granted I haven't actually tried it
> myself (: but why doesn't it work?  Is there some weird symbol
> dereferencing or some such that causes problems if -lavi/-lwav is added
> to each module that requires them, instead of to the core?

Just trusted my memory again (even after the MMXEXT fiasco :P).
But I'm going to give it a spin again, re-read the docs and report
what's happened.

Testing on amd64 since it's stricter than i386.

Bests,

-- 
Francesco Romani // Ikitt
http://fromani.exit1.org  ::: transcode homepage
http://tcforge.berlios.de ::: transcode experimental forge

Reply via email to