On 2011/11/10 06:04 PM, Loïc Minier wrote:
> When building u-boot for an ARMv5T platform (versatileqemu_config), the
>  Ubuntu-packaged Linaro cross-toolchain isn't suitable because it
>  only offers an ARMv7T2 libgcc.  But I'd like the build to fail when
>  that happens rather than silently generating an u-boot.bin which will
>  trigger a SIGILL when it hits the first non-ARMv5T instruction.
> 
>  I heard that gcc/ld are supposed to check this, but I'm not sure how
>  it's supposed to work; perhaps the way u-boot does its final link
>  prevents this from working properly?
> 
>  I tried building u-boot as follows:
>     make O=obj-broken \
>         CROSS_COMPILE=arm-linux-gnueabi- ARCH=arm \
>         OPTFLAGS="-marm -march=armv5te" \
>         versatileqemu_config
> 
>     make O=obj-broken \
>         CROSS_COMPILE=arm-linux-gnueabi- ARCH=arm \
>         OPTFLAGS="-marm -march=armv5te" \
>         -j2
I'd assume the Ubuntu-packaged toolchain probably doesn't have a ARMv5
multilib? You could either expand the toolchain configuration and
rebuild, or more simply, use a CodeSourcery toolchain. Our default
multilib is ARMv5TE.

If you truly mean v5T and not v5TE (I can't really tell from the
inconsistency between your description and the listed options above),
then you should use -march=armv4t, we ship v4T libraries too.

Chung-Lin

_______________________________________________
linaro-toolchain mailing list
linaro-toolchain@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-toolchain

Reply via email to