[http://www.codesourcery.com/ CodeSourcery] [http://www.codesourcery.com/gnu_toolchains/arm/download.html '''ARM GNU/Linux''' tool chain] is the version with the support for the latest ARM architecture. Mainline [http://gcc.gnu.org/ gcc] also has stable ARM support. Enhancements are made in the Codesourcery version first, and are then pushed back to mainline.

[http://www.codesourcery.com/ CodeSourcery] [http://www.codesourcery.com/gnu_toolchains/arm/download.html '''ARM GNU/Linux''' tool chain] is the version with the support for the latest ARM architecture. Mainline [http://gcc.gnu.org/ gcc] also has stable ARM support. Enhancements are made in the Codesourcery version first, and are then pushed back to mainline.

−

[http://www.codesourcery.com/gnu_toolchains/arm/portal/release313 2007q3 version] is recommended. An [http://people.mozilla.com/~vladimir/misc/cs2007q3-armel.tar.gz ARM-native version of CS2007q3 has been built] as well. You can also install a native tool-chain from Angstrom.

+

As of August 2009, [http://www.codesourcery.com/sgpp/lite/arm/portal/release858 2009q1-203 version] is recommended. If you look for native tool chain, you can also install a native tool-chain from Angstrom. More recent versions from 2011 (such as [http://www.codesourcery.com/sgpp/lite/arm/portal/release1803 2011.03-41 version]) should work just fine as well.

Note: If you will use only [[BeagleBoardAndOpenEmbeddedGit|OpenEmbedded (OE)]] to build code for your Beagle, you don't need to download the CodeSourcery compiler. OE builds a cross-compiler from source as part of the bitbake process.

Note: If you will use only [[BeagleBoardAndOpenEmbeddedGit|OpenEmbedded (OE)]] to build code for your Beagle, you don't need to download the CodeSourcery compiler. OE builds a cross-compiler from source as part of the bitbake process.

Note: A user reports that he found the use of CodeSourcery tool chain version 2007q1-21 and 2008q1-126 as strange. He has been using [http://www.codesourcery.com/gnu_toolchains/arm/portal/release313 '''2007q3-51'''] for a couple of months now.

* Note: CodeSourcery [http://groups.google.com/group/beagleboard/msg/63163389873902c3? 2008q1] has the following issues:

* Note: CodeSourcery [http://groups.google.com/group/beagleboard/msg/63163389873902c3? 2008q1] has the following issues:

Line 34:

Line 34:

** See [http://hardwarebug.org/2008/11/28/codesourcery-fails-again/ small problem with vectorization].

** See [http://hardwarebug.org/2008/11/28/codesourcery-fails-again/ small problem with vectorization].

−

== ARM RVDS compiler ==

+

* Note: CodeSourcery 2009q1 has the following issues:

+

** Floating-point code can be slower than with 2007q3, see [http://hardwarebug.org/2009/08/05/arm-compiler-shoot-out/ FFmpeg benchmarks].

+

+

== GDB debugger ==

+

+

gdb supports native debug or 'gdbserver' remote debug. For debug support for VFPv3 and NEON, you must use the 'gdbserver' approach - see [http://groups.google.com/group/beagleboard/browse_thread/thread/4b0e82be1e106242 How to enable VFPv3/NEON debug].

+

+

== The ARM Compiler (formerly RVCT) ==

−

ARM has the [http://www.arm.com/products/DevTools/RVDSPro.html Realview Developer Suite], with arguably better code generation than gcc. An [http://www.arm.com/products/DevTools/RVDSEvalCD.html DVD evaluation version] is available (or download via internet by [https://silver.arm.com/login/register.tm registering] followed by [https://silver.arm.com/licensing/autoeval.tm download]).

+

ARM has the [http://www.arm.com/ds5 Development Studio 5 (DS-5)], which contains the ARM reference compiler. A 30-day [http://www.arm.com/ds5 evaluation version] is available for download.

−

ARM RVDS tools can be used to generate Linux applications and shared-libraries, by following the [http://infocenter.arm.com/help/topic/com.arm.doc.dai0212a/DAI0212A_building_linux_apps_with_rvct40_and_gnu.pdf Apps Note 212 Building Linux applications using RVCT v4.0 and the GNU Tools and Libraries]

+

The ARM Compiler toolchain can be used to generate Linux applications and shared-libraries and is generally highly compatible with GCC. It also bundles the industry leading vectorizing compiler for [http://www.arm.com/products/processors/technologies/neon.php ARM NEON-]enabled devices.

−

ARM RVDS can also work in [http://www.scratchbox.org/ Scratchbox], by following [http://infocenter.arm.com/help/topic/com.arm.doc.dai0221a/DAI0221A_rvds_compiler_scratchbox.pdf Apps Note 221 RealView Development Suite 4.0 ARM Compiler for Scratchbox]

Contents

GCC compiler

Recommendations

CodeSourceryARM GNU/Linux tool chain is the version with the support for the latest ARM architecture. Mainline gcc also has stable ARM support. Enhancements are made in the Codesourcery version first, and are then pushed back to mainline.

As of August 2009, 2009q1-203 version is recommended. If you look for native tool chain, you can also install a native tool-chain from Angstrom. More recent versions from 2011 (such as 2011.03-41 version) should work just fine as well.

Note: If you will use only OpenEmbedded (OE) to build code for your Beagle, you don't need to download the CodeSourcery compiler. OE builds a cross-compiler from source as part of the bitbake process.

The ARM Compiler (formerly RVCT)

The ARM Compiler toolchain can be used to generate Linux applications and shared-libraries and is generally highly compatible with GCC. It also bundles the industry leading vectorizing compiler for ARM NEON-enabled devices.