[okl4-developer] big endian toolchain for gumstix

Ashish Bijlani ashish.bijlani at gmail.com
Thu Aug 21 15:37:56 EST 2008


thanks geoff. skyeye-1.2.5 didn't work for me and after reading
http://lists.okl4.org/pipermail/developer/2008-June/001280.html i got
confused  and thought gumstix was big endian. skyeye-1.2.3 works fine
for me. many thanks again.

-ashish

On Wed, Aug 20, 2008 at 10:49 PM, Geoffrey Lee <glee at ok-labs.com> wrote:
> On Wed, Aug 20, 2008 at 10:04:53PM -0400, Ashish Bijlani wrote:
>> Hello,
>>
>> I'm trying to simulate gumstix platform on skyeye. I'm using prebuilt
>> gcc-3.4.4-glibc-2.3.5 from nicta website. however, it seems the
>> toolchain has been compiled for little endian systems and produces a
>> little endian okl4 bootable images under "build/images". the
>> image.boot file is little endian and doesn't boot on skyeye. i observe
>> the same problem as described at
>> http://lists.okl4.org/pipermail/developer/2008-June/001280.html.
>
> Hi Ashish
>
> Our gumstixes are all little endian, have you modified your
> gumstix somehow to be big endian?  While there is not enough
> information as to why it would not boot on skyeye, we
> regularly simulate the gumstix platform on skyeye for
> testing purposes so it should work.
>
>>
>> With the prebuilt arm-linux toolchain from nicta, if I pass the flags
>> below to Xscale in "arch/arm/tools/machines.py", it fails linking
>> kernel
>>
>>     c_flags = arm.c_flags + ["-mbig-endian"]
>>     as_flags = ["-mbig-endian"]
>>     link_flags = ["-EB"]
>>
>> [LIB ] build/pistachio/lib/libplatform.a
>> [LINK] build/pistachio/bin/kernel
>> /opt/nicta/tools/gcc-3.4.4-glibc-2.3.5/arm-linux/bin/arm-linux-ld:
>> /opt/nicta/tools/gcc-3.4.4-glibc-2.3.5/arm-linux/bin/../lib/gcc/arm-linux/3.4.4/libgcc.a(_udivsi3.oS):
>> compiled for a little endian system and target is big endian
>> /opt/nicta/tools/gcc-3.4.4-glibc-2.3.5/arm-linux/bin/arm-linux-ld:
>> failed to merge target specific data of file
>> /opt/nicta/tools/gcc-3.4.4-glibc-2.3.5/arm-linux/bin/../lib/gcc/arm-linux/3.4.4/libgcc.a(_udivsi3.oS)
>>
>
>
> The toolchain provided libgcc is little endian by default, hence
> you won't be able to link with big endian code.  If you do not
> wish to compile a new toolchain you can use the OKL provided
> libgcc by doing in tools/toolchains.py:
>
> gnu_arm_toolchain = generic_gcc_3_4_libgcc("arm-linux-")
>
> to
>
> gnu_arm_toolchain = generic_gcc_3_4("arm-linux-")
>
>        -gl
>
>
>> Am I missing something? Am I not suppose to pass the big endian flags
>> to xscale? Is the prebuilt toolchain indeed for little endians only?
>> where can i download toolchain for big endian system from? Please
>> help.
>>
>> _______________________________________________
>> Developer mailing list
>> Developer at okl4.org
>> https://lists.okl4.org/mailman/listinfo/developer
>>
>
> --
>
>



More information about the Developer mailing list