[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: List of FTBFS in Ubuntu



On Fri, Dec 03, 2010 at 11:11:18AM +0000, Roger Leigh wrote:
> On Fri, Dec 03, 2010 at 11:27:44AM +0100, Joachim Wiedorn wrote:
> > Lucas Nussbaum <lucas@lucas-nussbaum.net> wrote on 2010-12-03 10:36:
> > 
> > > No, sorry. I must admit that I didn't spend any time investigating the
> > > failures. However, my irssi backlog says the two major changes in Ubuntu
> > > that could cause failures are:
> > > - --as-needed is now used by default by the linker
> > > - python2.7
> > 
> > Many packages (e.g. xfe, xfce-*) fails with 
> > "[LD_ERROR] ...: could not read symbols: Invalid operation"
> > 
> > I know that the Xfe package fails because Ubuntu use:
> > "-Bsymbolic-functions"  by default by the linker.
> > 
> > The reasons for the problems are redefinitions of some library functions 
> > in the package. See:
> > https://bugs.launchpad.net/ubuntu/+source/xfe/+bug/644645
> > 
> > Unfortunately I don't know any workaround. All upstreams ought to rewrite
> > many parts of the source code to work with this default linker config.
> 
> So you're saying Ubuntu is using -Bsymbolic* *by default*?
> 
> If so, that's even more retarded than their recent decision to
> enable -Wl,--as-needed by default, and that was a really bad decision
> by itself.  -Bsymbolic breaks most of the advantages of ELF, since it
> prevents LD_PRELOAD and hides things from the global symbol namespace,
> even duplicating global stuff so you get bizarre and broken program
> behaviour, as you're seeing here...

It doesn't prevent LD_PRELOAD. It does prevent intra-library calls to be
rerouted to another library, but it doesn't prevent inter-libraries
calls to be rerouted.

> http://software.intel.com/en-us/articles/performance-tools-for-software-developers-bsymbolic-can-cause-dangerous-side-effects/

... which is biased, as perfectly said in the comment.

But I do agree that a -Bsymbolic default is dangerous. Upstream may want
to use them at their will, but this shouldn't be enforced by the
toolchain.

Mike


Reply to: