When I build the Yocto toolchain for sabresd, and type the following:
./arm-poky-linux-gnueabi-gcc -dM -E - < /dev/null | grep ARM
your get:
#define __ARM_SIZEOF_WCHAR_T 32
#define __ARM_ARCH_ISA_ARM 1
#define __ARMEL__ 1
#define __ARM_FP 12
#define __ARM_NEON_FP 4
#define __ARM_SIZEOF_MINIMAL_ENUM 4
#define __ARM_PCS_VFP 1
#define __ARM_ARCH_5T__ 1
#define __ARM_FEATURE_CLZ 1
#define __ARM_ARCH_ISA_THUMB 1
#define __ARM_ARCH 5
#define __ARM_EABI__ 1
This causes problems when compiling a project with Autotools that uses the Yocto toolchain, because the ARCH for iMX6 should be version 7. For example, when compiling GHC, __ARM_ARCH_5T__ results in a v5 compiler instead of a v7 compiler, and the resulting binaries have problems.
Is there a reason for 5T? Should this be fixed? Does anyone know where in the Yocto build system to fix this?
how did you created the toolchain?
Please, let me know what do you have in your bblayers.conf.
As I remember (from top of my mind) meta-fsl-arm and meta-fsl-bsp-release uses different toolchain configuration. (meta-fsl-bsp-release override meta-fsl-arm).
Other thing, I would like to share you deep infor regarding how to control architecture in yocto project´s tools, however I prefer to know your goal, this way I can have the right direction for you.
Mike,
Had your issue got resolved? If yes, we are going to close the discussion in 3 days. If you still need help, please feel free to reply with an update to this discussion.
Thanks,
Yixing