customize-toolchain.txt 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. Customizing the toolchain
  2. -------------------------
  3. [[toolchain-custom]]
  4. There are three distinct types of toolchain backend supported in Buildroot,
  5. available under the menu +Toolchain+, invoking +make menuconfig+.
  6. Using the external toolchain backend
  7. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  8. There is no way of tuning an external toolchain since Buildroot does not
  9. generate it.
  10. It also requires to set the Buildroot settings according to the toolchain ones
  11. (see xref:external-toolchain[]).
  12. Using the internal Buildroot toolchain backend
  13. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  14. The internal Buildroot toolchain backend *only* allows to generate
  15. *http://www.uclibc.org/[uClibc]-based toolchains*.
  16. However, it allows to tune major settings, such as:
  17. * Linux header version
  18. * http://www.uclibc.org/[uClibc] configuration (see xref:uclibc-custom[uClibc])
  19. * Binutils, GCC, Gdb and toolchain options
  20. This is directly available after selecting the +Buildroot toolchain+ type in
  21. the menu +Toolchain+.
  22. Using the Crosstool-NG backend
  23. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  24. The http://crosstool-ng.org[crosstool-NG] toolchain backend enables a rather
  25. limited set of settings under the Buildroot +Toolchain+ menu (ie. when invoking
  26. +make menuconfig+); mostly:
  27. * The http://crosstool-ng.org[crosstool-NG] configuration file
  28. * Gdb and some toolchain options
  29. Then, the toolchain can be finely tuned invoking +make ctng-menuconfig+.