LD Changes To Implicit DSO Linking Update

Adam Williamson awilliam at redhat.com
Wed Feb 10 18:36:33 UTC 2010

On Wed, 2010-02-10 at 10:20 -0800, Roland McGrath wrote:
> > Hi,
> > On Wed, Feb 10, 2010 at 12:51 AM, Roland McGrath <roland at redhat.com> wrote:
> > >> Replace
> > >>   make CFLAGS="%{optflags} -X11" %{?_smp_mflags}
> > >> with
> > >>   make CFLAGS="%{optflags}" LDFLAGS="-lX11" %{?_smp_mflags}
> > >
> > > This is still not really ideal.  For the long run, you should be fixing the
> > > upstream package so that it passes -lX11 where it needs it.  The most proper
> > > change keeps -lX11 at the end of the link line, rather than the beginning.
> > 
> >  But, howcome build succeed with just adding -lX11 to CFLAGS for iok package?
> I didn't say it wouldn't.  "Ideal" means "ideal".

To answer the question, it works because the CFLAGS happen to be applied
to the linker command as well as the LDFLAGS. As Roland says, though,
adding it to CFLAGS is the wrongest fix, forcing it into LDFLAGS via the
spec file is slightly less wrong, but having the upstream code add the
flag properly during its configure stage is least wrong.
Adam Williamson
Fedora QA Community Monkey
IRC: adamw | Fedora Talk: adamwill AT fedoraproject DOT org

More information about the devel mailing list