[OE-core] [RFC] Binutils upgrade to 2.24

Saul Wold sgw at linux.intel.com
Fri Jan 31 21:36:36 UTC 2014


On 01/29/2014 08:33 PM, Khem Raj wrote:
> On Thu, Dec 19, 2013 at 7:21 AM, Saul Wold <sgw at linux.intel.com> wrote:
>> On 12/16/2013 12:03 PM, Khem Raj wrote:
>>>
>>> Hi
>>>
>>> I have pushed a contrib branch for binutils 2.24 upgrade here
>>>
>>>
>>> http://git.openembedded.org/openembedded-core-contrib/log/?h=kraj/binutils-2.24
>>>
>>> I have tested it on both uclibc/eglibc and qemu machines. But it would
>>> be nice if
>>> it gets more testing for machines I havent tested
>>>
>>
>> Looks like we tickled an LD bug of somekind, we are seeing the following
>> failure across all machines, this was a second build using binutils 2.24, so
>> there was some shared state usage.
>>
>> RP pointed out the --as-needed option was used with -lm as those symbols are
>> math related.
>>
>>> | powerpc-poky-linux-gcc  -m32 -mhard-float -mcpu=7400
>>> --sysroot=/home/pokybuild/yocto-autobuilder/yocto-slave/nightly-ppc/build/build/tmp/sysroots/qemuppc
>>> -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed
>>> -I/home/pokybuild/yocto-autobuilder/yocto-slave/nightly-ppc/build/build/tmp/work/ppc7400-poky-linux/wireless-tools/1_29-r4/wireless_tools.29
>>> -O2 -pipe -g -feliminate-unused-debug-types -MMD     -o iwconfig iwconfig.o
>>> libiw.so.29 -lm
>>> | powerpc-poky-linux-gcc  -m32 -mhard-float -mcpu=7400
>>> --sysroot=/home/pokybuild/yocto-autobuilder/yocto-slave/nightly-ppc/build/build/tmp/sysroots/qemuppc
>>> -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed
>>> -I/home/pokybuild/yocto-autobuilder/yocto-slave/nightly-ppc/build/build/tmp/work/ppc7400-poky-linux/wireless-tools/1_29-r4/wireless_tools.29
>>> -O2 -pipe -g -feliminate-unused-debug-types -MMD     -o iwlist iwlist.o
>>> libiw.so.29 -lm
>>> | powerpc-poky-linux-gcc  -m32 -mhard-float -mcpu=7400
>>> --sysroot=/home/pokybuild/yocto-autobuilder/yocto-slave/nightly-ppc/build/build/tmp/sysroots/qemuppc
>>> -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed
>>> -I/home/pokybuild/yocto-autobuilder/yocto-slave/nightly-ppc/build/build/tmp/work/ppc7400-poky-linux/wireless-tools/1_29-r4/wireless_tools.29
>>> -O2 -pipe -g -feliminate-unused-debug-types -MMD     -o iwpriv iwpriv.o
>>> libiw.so.29 -lm
>>> | powerpc-poky-linux-gcc  -m32 -mhard-float -mcpu=7400
>>> --sysroot=/home/pokybuild/yocto-autobuilder/yocto-slave/nightly-ppc/build/build/tmp/sysroots/qemuppc
>>> -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed
>>> -I/home/pokybuild/yocto-autobuilder/yocto-slave/nightly-ppc/build/build/tmp/work/ppc7400-poky-linux/wireless-tools/1_29-r4/wireless_tools.29
>>> -O2 -pipe -g -feliminate-unused-debug-types -MMD     -o iwspy iwspy.o
>>> libiw.so.29 -lm
>>> | powerpc-poky-linux-gcc  -m32 -mhard-float -mcpu=7400
>>> --sysroot=/home/pokybuild/yocto-autobuilder/yocto-slave/nightly-ppc/build/build/tmp/sysroots/qemuppc
>>> -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed
>>> -I/home/pokybuild/yocto-autobuilder/yocto-slave/nightly-ppc/build/build/tmp/work/ppc7400-poky-linux/wireless-tools/1_29-r4/wireless_tools.29
>>> -O2 -pipe -g -feliminate-unused-debug-types -MMD     -o iwgetid iwgetid.o
>>> libiw.so.29 -lm
>>> | powerpc-poky-linux-gcc  -m32 -mhard-float -mcpu=7400
>>> --sysroot=/home/pokybuild/yocto-autobuilder/yocto-slave/nightly-ppc/build/build/tmp/sysroots/qemuppc
>>> -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed
>>> -I/home/pokybuild/yocto-autobuilder/yocto-slave/nightly-ppc/build/build/tmp/work/ppc7400-poky-linux/wireless-tools/1_29-r4/wireless_tools.29
>>> -O2 -pipe -g -feliminate-unused-debug-types -MMD     -o iwevent iwevent.o
>>> libiw.so.29 -lm
>>> | libiw.so.29: undefined reference to `ceil'
>>> | libiw.so.29: undefined reference to `pow'
>>> | libiw.so.29: undefined reference to `log10'
>>> | libiw.so.29: undefined reference to `floor'
>>> | collect2: error: ld returned 1 exit status
>>> | make: *** [iwconfig] Error 1
>>> | make: *** Waiting for unfinished jobs....
>>> | libiw.so.29: undefined reference to `ceil'
>>> | libiw.so.29: undefined reference to `pow'
>>> | libiw.so.29: undefined reference to `log10'
>>> | libiw.so.29: undefined reference to `floor'
>>> | collect2: error: ld returned 1 exit status
>>> | make: *** [iwgetid] Error 1
>>> | libiw.so.29: undefined reference to `ceil'
>>> | libiw.so.29: undefined reference to `pow'
>>> | libiw.so.29: undefined reference to `log10'
>>> | libiw.so.29: undefined reference to `floor'
>>> | collect2: error: ld returned 1 exit status
>>> | make: *** [iwspy] Error 1
>>> | libiw.so.29: undefined reference to `ceil'
>>> | libiw.so.29: undefined reference to `pow'
>>> | libiw.so.29: undefined reference to `log10'
>>> | libiw.so.29: undefined reference to `floor'
>>> | collect2: error: ld returned 1 exit status
>>> | make: *** [iwpriv] Error 1
>>> | libiw.so.29: undefined reference to `ceil'
>>> | libiw.so.29: undefined reference to `pow'
>>> | libiw.so.29: undefined reference to `log10'
>>> | libiw.so.29: undefined reference to `floor'
>>> | collect2: error: ld returned 1 exit status
>>> | make: *** [iwlist] Error 1
>>> | libiw.so.29: undefined reference to `ceil'
>>> | libiw.so.29: undefined reference to `pow'
>>> | libiw.so.29: undefined reference to `log10'
>>> | libiw.so.29: undefined reference to `floor'
>>> | collect2: error: ld returned 1 exit status
>>> | make: *** [iwevent] Error 1
>>> | ERROR: oe_runmake failed
>>
>>
>
> I tested OE-Core builds for qemuppc
>
> 1. build from scratch  ( MACHINE=qemuppc bitbake wirelesstools)
> 2. build from sstate ( MACHINE=qemuppc bitbake -cclean wirelesstools
> and then step 1)
> 3. Build second time just wireless-tools ( MACHINE=qemuppc bitbake
> -ccleanall wirelesstools and then step 1 )
> 4. Rebuild all from sstate ( rm -rf tmp/ and then step 1)
>
> I could not reproduce this issue at all. The differences are I did it
> with OE-Core and not with Poky autbuilders run with poky distro
> policies.
> we should also actually regress OE-Core alone
>
> My build machine here is debian/wheezy and ubuntu 12.04 both 64bit)
>
> I am on commit c3f3fed1b397b6ee6d44e7d39e63d084e4a88e30 of OE-Core
>
> At this point I am out of ideas how to reproduce this.
>
> If there is some other developer out there who can try this patch and
> get the same errors,that would be interesting and probably we
> will get to root of it.
>
>
Sorry Khem, failed again!

Build Configuration:
BB_VERSION        = "1.21.1"
BUILD_SYS         = "x86_64-linux"
NATIVELSBSTRING   = "Ubuntu-13.10"
TARGET_SYS        = "powerpc-poky-linux"
MACHINE           = "qemuppc"
DISTRO            = "poky"
DISTRO_VERSION    = "1.5+snapshot-20140131"
TUNE_FEATURES     = "m32 fpu-hard ppc7400 altivec"
TARGET_FPU        = ""
meta
meta-yocto
meta-yocto-bsp    = "mut:980faeefaac3466aff38822479bf7d9fff4994eb"


I did a bitbake -c cleansstate binutils-native eglibc wireless-tools 
followed by a bitbake of wireless-tools and I still get this same failure.

My build info above.

I tried with OE-Core alone and still got the same failure (this time 
with ARM!)

Build Configuration:
BB_VERSION        = "1.21.1"
BUILD_SYS         = "x86_64-linux"
NATIVELSBSTRING   = "Ubuntu-13.10"
TARGET_SYS        = "arm-oe-linux-gnueabi"
MACHINE           = "qemuarm"
DISTRO            = "nodistro"
DISTRO_VERSION    = "nodistro.0"
TUNE_FEATURES     = "armv5 thumb dsp"
TARGET_FPU        = "soft"
meta              = "binutils:e20eeca128f362d500e19c5757e13cc7dab86b3a"


Totally clean build area.



Sau!




More information about the Openembedded-core mailing list