Toolchain and Embedded Distributions: Difference between revisions

From Linux/Xtensa
Jump to navigation Jump to search
No edit summary
Line 1: Line 1:
== [Toolchain Overlay File] ==
Because Xtensa is a configurable and extensible processor architecture that allows to define additional registers and instructions, the toolchain is the main software component that usually needs to be adapted for a specific Xtensa processor configuration. Tensilica provides a set of configuration files in form of an ''overlay'' file that need to be copied on top of the toolchain sources.
== Start from scratch with FSF/OSS sources ==
== Start from scratch with FSF/OSS sources ==


Creating a toolchain and bootable root file system starting from sources is certainly the most challenging approach. It usually requires additional patches and sometimes matching versions of sources. While support for Xtensa is integrated in most toolchain tools, they require additional configuration files to support a specific Xtensa processor configuration. Tensilica, for example, provides a set of these files as part of the processor configuration download in form of an ''overlay''.
Creating a toolchain and bootable root file system starting from sources is certainly the most challenging approach. It usually requires additional patches and sometimes matching versions of sources. While support for Xtensa is integrated in most toolchain tools, they must be patches for a specific Xtensa processor configuration. The ''overlay'' file includes the necessary set of configuration files together with information that explains the process to patch the toolchain sources.


== [http://crosstool-ng.org/ crosstool-NG] <small>([[crosstool-NG|build instructions for Xtensa]])</small> ==
== [http://crosstool-ng.org/ crosstool-NG] <small>([[crosstool-NG|build instructions for Xtensa]])</small> ==


crosstool-NG (http://crosstool-ng.org/) provides a system to build a complete toolchain. It supports various C-libraries (Multilib, uClibc, glibc, and eglibc), but can also be used to build a 'bare' toolchain. The current version does not yet support Xtensa as a target, but a development version can be retrieved from the local [http://git.linux-xtensa.org/ GIT] repositories. More information for building a toolchain for Xtensa using crosstool-NG can be found [[crosstool-NG|here]].
crosstool-NG (http://crosstool-ng.org/) provides a system to build a complete toolchain. It supports various C-libraries (Multilib, uClibc, glibc, and eglibc), but can also be used to build a 'bare' toolchain. The current version does not yet support Xtensa as a target, but a development version can be retrieved from the local [http://git.linux-xtensa.org/ GIT] repositories. Patching the toolchain and other software, that is architecture specific, is fully automated using the ''overlay'' file. More information for building a toolchain for Xtensa using crosstool-NG can be found [[crosstool-NG|here]].


== [http://www.buildroot.uclibc.org BuildRoot] <small>([[Buildroot|build instructions for Xtensa]])</small> ==
== [http://www.buildroot.uclibc.org BuildRoot] <small>([[Buildroot|build instructions for Xtensa]])</small> ==


Buildroot is a set of Makefiles and patches that makes it easy to generate a cross-compilation toolchain and root file system for your target Linux system. Xtensa is fully supported in the official tree. For build instructions, see [[Buildroot]].
Buildroot is a set of Makefiles and patches that makes it easy to generate a cross-compilation toolchain and root file system for your target Linux system. The Xtensa architecture is fully supported in the official tree, including support for specific processor configuration using the ''overlay'' file. For build instructions, see [[Buildroot]].

Revision as of 01:48, 15 March 2013

[Toolchain Overlay File]

Because Xtensa is a configurable and extensible processor architecture that allows to define additional registers and instructions, the toolchain is the main software component that usually needs to be adapted for a specific Xtensa processor configuration. Tensilica provides a set of configuration files in form of an overlay file that need to be copied on top of the toolchain sources.

Start from scratch with FSF/OSS sources

Creating a toolchain and bootable root file system starting from sources is certainly the most challenging approach. It usually requires additional patches and sometimes matching versions of sources. While support for Xtensa is integrated in most toolchain tools, they must be patches for a specific Xtensa processor configuration. The overlay file includes the necessary set of configuration files together with information that explains the process to patch the toolchain sources.

crosstool-NG (build instructions for Xtensa)

crosstool-NG (http://crosstool-ng.org/) provides a system to build a complete toolchain. It supports various C-libraries (Multilib, uClibc, glibc, and eglibc), but can also be used to build a 'bare' toolchain. The current version does not yet support Xtensa as a target, but a development version can be retrieved from the local GIT repositories. Patching the toolchain and other software, that is architecture specific, is fully automated using the overlay file. More information for building a toolchain for Xtensa using crosstool-NG can be found here.

BuildRoot (build instructions for Xtensa)

Buildroot is a set of Makefiles and patches that makes it easy to generate a cross-compilation toolchain and root file system for your target Linux system. The Xtensa architecture is fully supported in the official tree, including support for specific processor configuration using the overlay file. For build instructions, see Buildroot.