This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

arm-none-linux-gnueabi vs arm-arago-linux-gnueabi compiler

Is there a significant difference between compiling the kernel with the arm-none-linux-gnueabi compiler from Codesourcery vs arm-arago-linux-gnueabi compiler that is included in the SDK's linux-devkit/bin folder?

  • Hi,

    I know nothing about the second one, I don't know what is the exact deference between the two binaries, maybe it is not known, I don't have arm-arago-linux-gnueabi in my EZSDK for example, but since the EZSDK download page suggests CodeSourcery, I guess it is meant to be used with that one. If you are using different release, check your docs, but it could be the same (depending on the release).

    Thank you.

    BR

    Vladimir

  • The arm-none-linux-gnueabi compiler was installed as part of EZSDK for the DM8168.  The arm-arago-linux-gnueabi compiler was installed as part of ti-sdk-am335x-evm-05.07.00.00 for the AM335x. The compiler is installed in ti-sdk-am335x-evm-05.07.00.00/linux-devkit/bin/

    Linux support for the DM8168 is based on kernel 2.6.37.  Linux support for the AM335x is based on kernel 3.2.  Some members of my team think that the Codesourcery compiler will do for both DM8168 and AM335x, but I am concerned that compiling the kernel 3.2 for the AM335x with the compiler from Codesourcery may cause some issues.

  • argeebee,

    Difference between those two compilers are mostly unknown to me. But I used arm-none-linux-gnueabi instead of Arago toolchain and there is no difference noticed. May be arago tool chain project is optimized for or cotributed by TI for few TI platforms.

  • Sorry for bumping an old topic,

    I compiled lame mp3 encoder with CodeSourcery toolchain (recommended for EZSDK) and with Arago toolchain (which comes with DVR-RDK). There's a noticeable difference in favor of Arago when running on DM8168 (Cortex-A8 core @ 1.2 GHz).

    For example, when encoding a test WAV of 3:47 minutes, CodeSourcery-built lame executable finishes in about ~1:51 minutes, and Arago-built finishes in ~0:55. Encoder settings were 320 kbps, quality=5 (medium). Increasing the quality lowers the time difference, but it's still there and it's not small.

    In both cases, it was built without any architecture-specific compiler switches, and with software floating point sorry, softfp argument passing convention, but the fp calculations are probably done on VFP. The only difference is that the configure script was instructed to use different compiler (arm-none-linux-gnueaebi vs arm-arago-linux-gnueabi).

    I still have to investigate this further, but it seems that Arago toolchain is indeed better optimized for newer ARM cores compared to free 2009 version of CodeSourcery.