Toolchain and Embedded Distributions
Introduction
For many embedded applications, the requirements for the processor deviate from those in development workstations. The chosen processor architecture, therefore, usually differs and requires cross development tools to compile the target applications on the workstation. Generating the cross development tools and a suitable environment is certainly not an easy venture. Several projects have, therefore, materialized over time to alleviate the process.
Note that most embedded distributions listed below don't currently support the Xtensa architecture and require modifications. Patches for various versions of the toolchain sources can be found under http://www.linux-xtensa.org/pub/patches/.
Start from scratch with FSF/OSS sources
Starting from sources is certainly the most challenging approach. It usually requires additional patches and sometimes matching versions of sources.
LinuxFromScratch
This project is docomprises several projects intended to help building a Linux system from sources. The main project resembles a book that describes the build-process in great detail.
Xtensa Linux Development Environment
The Xtensa Linux Development Environment (XLIDE) is a very simple perl script to build the cross development tools specific for Xtensa.
CrossTool
CrossTool (http://kegel.com/crosstool/") was developed by Dan Kegel originally to test different versions of the toolchain in various combinations for cross-compilation. It consists of a set of scripts and configuration files.
BuildRoot
Buildroot is a set of Makefiles and patches that makes it easy generate a cross-compilation toolchain and root filesystem for your target Linux system using the uClibc C library.
OpenEmbedded
OpenEmbedded (http://openembedded.org) provided a development environment for embedded systems.
emDebian
Based on the debian distribution, emDebian (http://emdebian.org) is a project to provide a special version of Debian taylored for embedded devices.