On Sun, 2009-12-06 at 21:03 +0000, Andrew Church wrote: > >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. > > Sounds good. If it doesn't work, we can always go to shared libraries > as a fallback.
Seems to work like a charm, and that dazzled me. I was pretty confident that the static linking would have failed because multiple shared object loaded into the same executable would have the same symbol visible. But the dynamic linker apparently doesn't care about that (or at least it doesn't complain loudly). No symbol clash, no complains, no warning, anything. However, I realized this make some sense because we already relies on that behaviour from a while, because every module exports the same entry point. However, this whole thing still puzzles me significantly. I think it's time to fire up the "Linkers & Loaders" book. In the meantime, the first batch of changeset with push down the libs to the modules, de-cluttering the main executable, was already been committed. Versioned installed files/dirs are on their way too. Bests, -- Francesco Romani // Ikitt http://fromani.exit1.org ::: transcode homepage http://tcforge.berlios.de ::: transcode experimental forge