All of lore.kernel.org
 help / color / mirror / Atom feed
* SDK environment LDFLAGS problem?
@ 2013-01-15 16:52 Patrick Turley
  2013-01-15 17:21 ` Eric Bénard
  2013-01-15 17:38 ` Brian Lloyd
  0 siblings, 2 replies; 7+ messages in thread
From: Patrick Turley @ 2013-01-15 16:52 UTC (permalink / raw)
  To: yocto@yoctoproject.org

I used the meta-toolchain-sdk recipe to produce an SDK, and I installed it. Here's an interesting line from the environment setup script:

  export LDFLAGS="-Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed"

All these linker options are preceded by "-Wl", which indicates the SDK is *expecting* them to be given to gcc and then passed on to ld.

If you look at the help for the ld command line, all these options are available, but with the "-Wl," omitted. In fact, if you use these options exactly as shown here, ld will complain that they aren't recognized and fail.

So, the SDK is giving me a value of LDFLAGS that *cannot* be used with ld. Of course, the C compiler driver can link and produce executables, and that muddies the issue somewhat.

Here's an example where this is causing me real problems…

I'm building an external module against the kernel produced by Yocto. Here's an extract from my output:


make -C /home/pturley/yocto-mpu-build/tmp/work/dm8148_mpu-poky-linux-gnueabi/linux-ti81xx-psp-2.6.37-r0+spawnlabs+r0/git M=`pwd` ARCH=arm CROSS_COMPILE=/opt/poky/1.3/sysroots/x86_64-pokysdk-linux/usr/bin/armv7a-vfp-neon-poky-linux-gnueabi/arm-poky-linux-gnueabi- \
                EXTRA_CFLAGS="-DUSE_UDEV=1 -DMAX_POOLS=128" modules
.
.
.
  LD [M]  /home/pturley/z3-work/z3-centaurus-dm814x_RPS-20120626/ezsdk/component-sources/linuxutils_3_22_00_02/packages/ti/sdo/linuxutils/cmem/src/module/cmemk.ko
/opt/poky/1.3/sysroots/x86_64-pokysdk-linux/usr/bin/armv7a-vfp-neon-poky-linux-gnueabi/arm-poky-linux-gnueabi-ld: unrecognized option '-Wl,-O1'


As you can see here, the kernel Make files are interpreting LDFLAGS as something that *can* be given directly to ld, so they fail.


My questions are:

1) Has anyone else run into this before?

2) If so, how did you resolve it?

3) Since the Yocto kernel build is *not* failing, I infer that it is *not* using the ld options the SDK gives me. So, the Yocto kernel build has its own pathway through which it computes its value for LDFLAGS. Why would Yocto use its own SDK in a way that no user is expected to?



^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2013-01-16  6:48 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-01-15 16:52 SDK environment LDFLAGS problem? Patrick Turley
2013-01-15 17:21 ` Eric Bénard
2013-01-15 17:38 ` Brian Lloyd
2013-01-15 17:59   ` Patrick Turley
2013-01-15 18:06     ` Bruce Ashfield
2013-01-16  6:37       ` Wolfgang Denk
2013-01-15 18:21     ` Eric Bénard

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.