On Sun, Nov 14, 2010 at 01:51:49PM +0100, Kurt Roeckx wrote: > On Sun, Nov 07, 2010 at 04:19:10PM +0000, Roger Leigh wrote: > > On Fri, Oct 29, 2010 at 03:43:57PM +0200, Matthias Klose wrote: > > > For wheezy I'm planning to change the linking behaviour for DSOs (turning > > > on --as-needed and --no-copy-dt-needed-entries. The rationale is > > > summarized in http://wiki.debian.org/ToolChain/DSOLinking. I would like > > > to know about issues with these changes on some of the Debian ports, and > > > if we need to disable one of these changes on some port. > > > > While I understand the rationale for --no-copy-dt-needed-entries for > > preventing encapsulation violations via indirect linking, I don't agree > > with the use of --as-needed *at all*. If a library has been explicitly > > linked in, it shouldn't be removed. This is an issue for fixing in > > individual packages, not in the toolchain. > > > > I can understand on using it on a per-package basis, but not in the > > actual toolchain defaults. The compiler and linker *should not be > > second-guessing the user*. This can break perfectly legitimate code > > making use of ELF constructors and other features which won't be > > picked out just by looking at symbol usage. > > People have been claiming that constructors or init section are a > possible problem. I have yet to see an example where it breaks. It's not a very widely used feature. I'm sure it's trivial to make such a test case. Portable software tends not to make use of ELF- specific features like this, but that's not an excuse for breaking perfectly legitimate code. But whether or not there are real life examples, --as-needed is *fundamentally wrong*. It's deliberately *not doing what the user requested*, and to make that misfeature the system-wide default would be entirely inappropriate. If a package wishes to make use of such a feature after understanding the implications, then they are free to do so. But to make it the default--I don't think that's a technically sound decision. Regards, Roger -- .''`. Roger Leigh : :' : Debian GNU/Linux http://people.debian.org/~rleigh/ `. `' Printing on GNU/Linux? http://gutenprint.sourceforge.net/ `- GPG Public Key: 0x25BFB848 Please GPG sign your mail.
Description: Digital signature