On Wed, 11 Apr 2012 13:04:59 -0400, H. S. Teoh <hst...@quickfur.ath.cx> wrote:

On Wed, Apr 11, 2012 at 01:37:48AM -0700, Jonathan M Davis wrote:
[...]
Unfortunately, I have no idea why the linking order even matters in
the first place, so I can't really say what we need to do here.
Hopefully, someone else around here _does_ know. But the issue does
seem to need to be brought up.
[...]

This is because many linkers (including *nix ld, IIRC) resolve symbols
in the order the libraries were specified on the command-line. I don't
remember the exact reason for this, but it probably has to do with
improving the performance of the symbol resolution algorithm. It's a
legacy from the early days of linker technology.

Not exactly. For example, Ubuntu 10 was perfectly happy accepting libraries in any order. Only with Ubuntu 11 did this "revert" to the old way.

I'm not sure that the reasoning was that it's "simpler", because clearly it's possible (and implemented!)

Look for my other post for Ubuntu's explanation why, I don't really understand it.

-Steve

Reply via email to