Yocto dizzy version 1.7.1 cross compiling meta-toolchain BROKEN for weeks now!

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Yocto dizzy version 1.7.1 cross compiling meta-toolchain BROKEN for weeks now!

Jump to solution
12,155 Views
AdCmo
Contributor III

All,

We have been observing this bug for many weeks now, hoping the dizzy build will be updated to fix this. It looks l

ike it is not getting any attention. Please help!

Any quick solution while waiting for a git repository fix?

There is a problem with this “dizzy” toolchain. though the meta-toolchain environment.

It shows that this wandboard-dual uses hard-float VFP,

it looks like soft float is used somewhere and __ARM_PCS_VFP is not defined.


Here is the version of gcc set up by the environment above:


+++++++++++++++++++++++++++++++++OUTPUT+++++++++++++++++++++++++++++++++++++

aseema@en4078926linux:~/myyocto/fsl-community-bsp/build/tmp/sysroots/wandboard-dual/home/xuser$ arm-poky-linux-gnueabi-gcc -v

Using built-in specs.

COLLECT_GCC=arm-poky-linux-gnueabi-gcc

COLLECT_LTO_WRAPPER=/opt/poky/1.7.1/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/4.9.1/lto-wrapper

Target: arm-poky-linux-gnueabi

Configured with: /home/aseema/myyocto/fsl-community-bsp/build/tmp/work-shared/gcc-4.9.1-r0/gcc-4.9.1/configure --build=x86_64-linux --host=x86_64-pokysdk-linux --target=arm-poky-linux-gnueabi --prefix=/opt/poky/1.7.1/sysroots/x86_64-pokysdk-linux/usr --exec_prefix=/opt/poky/1.7.1/sysroots/x86_64-pokysdk-linux/usr --bindir=/opt/poky/1.7.1/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi --sbindir=/opt/poky/1.7.1/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi --libexecdir=/opt/poky/1.7.1/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi --datadir=/opt/poky/1.7.1/sysroots/x86_64-pokysdk-linux/usr/share --sysconfdir=/opt/poky/1.7.1/sysroots/x86_64-pokysdk-linux/etc --sharedstatedir=/opt/poky/1.7.1/sysroots/x86_64-pokysdk-linux/com --localstatedir=/opt/poky/1.7.1/sysroots/x86_64-pokysdk-linux/var --libdir=/opt/poky/1.7.1/sysroots/x86_64-pokysdk-linux/usr/lib/arm-poky-linux-gnueabi --includedir=/opt/poky/1.7.1/sysroots/x86_64-pokysdk-linux/usr/include --oldincludedir=/opt/poky/1.7.1/sysroots/x86_64-pokysdk-linux/usr/include --infodir=/opt/poky/1.7.1/sysroots/x86_64-pokysdk-linux/usr/share/info --mandir=/opt/poky/1.7.1/sysroots/x86_64-pokysdk-linux/usr/share/man --disable-silent-rules --disable-dependency-tracking --with-libtool-sysroot=/home/aseema/myyocto/fsl-community-bsp/build/tmp/sysroots/x86_64-nativesdk-pokysdk-linux --with-gnu-ld --enable-shared --enable-languages=c,c++ --enable-threads=posix --enable-multilib --enable-c99 --enable-long-long --enable-symvers=gnu --enable-libstdcxx-pch --program-prefix=arm-poky-linux-gnueabi- --without-local-prefix --enable-target-optspace --enable-lto --enable-libssp --disable-bootstrap --disable-libmudflap --with-system-zlib --with-linker-hash-style=gnu --enable-linker-build-id --with-ppl=no --with-cloog=no --enable-checking=release --enable-cheaders=c_global --with-gxx-include-dir=/opt/poky/1.7.1/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi/usr/include/c++/4.9.1 --with-build-time-tools=/home/aseema/myyocto/fsl-community-bsp/build/tmp/sysroots/x86_64-linux/usr/arm-poky-linux-gnueabi/bin --with-sysroot=/opt/poky/1.7.1/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi --with-build-sysroot=/home/aseema/myyocto/fsl-community-bsp/build/tmp/sysroots/wandboard-dual --enable-poison-system-directories --with-mpfr=/home/aseema/myyocto/fsl-community-bsp/build/tmp/sysroots/x86_64-nativesdk-pokysdk-linux --with-mpc=/home/aseema/myyocto/fsl-community-bsp/build/tmp/sysroots/x86_64-nativesdk-pokysdk-linux --enable-nls --with-arch=armv7-a

Thread model: posix

gcc version 4.9.1 (GCC)

aseema@en4078926linux:~/myyocto/fsl-community-bsp/build/tmp/sysroots/wandboard-dual/home/xuser$

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


Now trying to compile the simple “Hello World!” above I get:


+++++++++++++++++++++++++++++++++OUTPUT+++++++++++++++++++++++++++++++++++++

aseema@en4078926linux:~/myyocto/fsl-community-bsp/build/tmp/sysroots/wandboard-dual/home/xuser$ ls -l

total 4

-rw-rw-r-- 1 aseema aseema 80 Mar 30 22:36 hello_arm_world.c

aseema@en4078926linux:~/myyocto/fsl-community-bsp/build/tmp/sysroots/wandboard-dual/home/xuser$ arm-poky-linux-gnueabi-gcc hello_arm_world.c

In file included from /opt/poky/1.7.1/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi/usr/include/features.h:389:0,

                 from /opt/poky/1.7.1/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi/usr/include/stdio.h:27,

                 from hello_arm_world.c:1:

/opt/poky/1.7.1/sysroots/cortexa9hf-vfp-neon-poky-linux-gnueabi/usr/include/gnu/stubs.h:7:29: fatal error: gnu/stubs-soft.h: No such file or directory

# include <gnu/stubs-soft.h>

                             ^

compilation terminated.

aseema@en4078926linux:~/myyocto/fsl-community-bsp/build/tmp/sysroots/wandboard-dual/home/xuser$

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


If you go to , you will notice that it is checking for “#if !defined __ARM_PCS_VFP”.

This somehow is not defined.

Even when I try to hack it by putting “#define  __ARM_PCS_VFP 1” at the top of my , I get the linker error below, which implies intermediate files were built with __ARM_PCS_VFP not defined.


+++++++++++++++++++++++++++++++++OUTPUT+++++++++++++++++++++++++++++++++++++

aseema@en4078926linux:~/myyocto/fsl-community-bsp/build/tmp/sysroots/wandboard-dual/home/xuser$ arm-poky-linux-gnueabi-gcc hello_arm_world.c

/opt/poky/1.7.1/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/4.9.1/ld: error: a.out uses VFP register arguments, /tmp/ccKo5YRb.o does not

/opt/poky/1.7.1/sysroots/x86_64-pokysdk-linux/usr/libexec/arm-poky-linux-gnueabi/gcc/arm-poky-linux-gnueabi/4.9.1/ld: failed to merge target specific data of file /tmp/ccKo5YRb.o

collect2: error: ld returned 1 exit status

aseema@en4078926linux:~/myyocto/fsl-community-bsp/build/tmp/sysroots/wandboard-dual/home/xuser$

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


We have been observing this bug for many weeks now, hoping the dizzy build will be updated to fix this. It looks like it is not getting any attention. Please help!

Any quick solution while waiting for a git repository fix?

Full step by step document to reproduce this here.
+++++++++++++++++END OF DOCUMENT++++++++++++++++

Thanks,

Ad.

.........................

Labels (3)
0 Kudos
1 Solution
1,859 Views
AdCmo
Contributor III

Found out from Matt that I overlooked the fact that the $CC variable

contains the complete cross compiler command plus all the hard float options.

So, invoking the cross compiler like below should be enough.

$CC hello_arm_world.c

The bottom of this document is updated to show correct commands and output.


Ad.

.......................

View solution in original post

0 Kudos
1 Reply
1,860 Views
AdCmo
Contributor III

Found out from Matt that I overlooked the fact that the $CC variable

contains the complete cross compiler command plus all the hard float options.

So, invoking the cross compiler like below should be enough.

$CC hello_arm_world.c

The bottom of this document is updated to show correct commands and output.


Ad.

.......................

0 Kudos