Building Linux applications is aimed at ARM architecture v5TE (ARMv5TE™) or later processors, such as the ARM926EJ-S™ and ARM1176JZ-S™ processors. This is because the ARM ABI uses ARMv5TE as its base architecture, and earlier architecture versions are not fully covered by the ABI.
You might be able to use the ARM Compiler toolchain to build Linux applications for ARM architecture v4T (ARMv4T™) processors, such as the ARM720T™ and ARM920T™ processors. This is, however, entirely at your own risk and is not supported. In particular, you cannot use Thumb code built for ARMv4T in shared libraries. ARM recommends that you only use the GNU toolchain when building Linux applications for ARMv4T targets.
The filesystem on your target must contain the ABI-compliant library binaries that are included in the CodeSourcery GNU toolchain releases.
Also, the target must be running a Linux kernel with:
support for the Native POSIX Threading Library (NPTL), that is the more recent mechanism for supporting multithreaded code under Linux with the GNU C library
thread-local storage (TLS).
For the mainstream kernel source, this means that your target must be running version 2.6.12 (or later) of the Linux kernel. Your Linux distribution, however, might have applied the appropriate patches to its release of an earlier kernel. For more details, contact your Linux distributor.
Prebuilt binary images of the Linux kernel configured for the ARM development boards can be found on the ARM website.