[yocto] SDK environment LDFLAGS problem?

Wolfgang Denk wd at denx.de
Tue Jan 15 22:37:49 PST 2013


Dear Bruce,

In message <50F59A91.5080806 at windriver.com> you wrote:
>
> > Yes, it's clear to me that, in this one respect, the SDK is unsuitable
> > for building kernels or kernel modules.
> >
> > My point is that this is a problem, and it might be reasonable to fix it.

This is indeed a problem, and not only with the kernel, but also for
example with U-Boot - fortunately there are not that many software
packages that need to tweak with linker scripts etc. so they need to
call the linker directly.

> You probably want Jessica or Richard to comment on the architecture /
> design of the SDK with respect to kernel elements. The only packaging
> for out of tree / non build system builds that I know I've ever looked
> into are on target, or staging directory builds of modules.
...

> Everyone/Everything has their reasons for the different workflow(s).
> (I maintain the ability to build all the boards covered in linux-yocto
> without the need for any build system at all, as an example). And all
> workflows are definitely valid, but it is expected that the primary
> workflow for anything oe/bitbake based would be centered around recipes.

I found it difficult to find any formal definition of what LDFLAGS is
supposed to be.  The most authoritative appears to be the definition
as given by the make(1) documentation - as this is where LDFLAGS
actually gets used:

	`LDFLAGS'
	     Extra flags to give to compilers when they are supposed
	     to invoke the linker, `ld'.

Note the phrase "flags to give to compilers", i. e. this clearly
states that the linking is supposed to be done by running the compiler
frontend, and not the linker directly.

So even though we feel the recent version breaks old habits, it seems
that simply our old habits were based on incorrect assumptions.

I see no reason to fix the current settings, but perhaps it would be
helpful to clearly document this behaviour and recommend a workaround.

At least this was what we did for our Yocto based ELDK [1].

[1] http://www.denx.de/wiki/view/ELDK-5/FrequentlyAskedQuestionsAndAnswers#Compiling_U_Boot_or_Linux_fails

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Steal five dollars and you were a petty  thief.  Steal  thousands  of
dollars and you are either a government or a hero.
                                   - Terry Pratchett, _Going_Postal_



More information about the yocto mailing list