// -*- mode:doc; -*-
// vim: set syntax=asciidoc:

==== Using the generated toolchain outside Buildroot

You may want to compile, for your target, your own programs or other
software that are not packaged in Buildroot. In order to do this you
can use the toolchain that was generated by Buildroot.

The toolchain generated by Buildroot is located by default in
+output/host/+. The simplest way to use it is to add
+output/host/bin/+ to your PATH environment variable and then to
use +ARCH-linux-gcc+, +ARCH-linux-objdump+, +ARCH-linux-ld+, etc.

It is possible to relocate the toolchain, this allows to distribute
the toolchain to other developers to build applications for your
target. To achieve this:

* run +make sdk+, which prepares the toolchain to be relocatable;
* tarball the contents of the +output/host+ directory;
* distribute the resulting tarball.

Once the toolchain is installed to the new location, the user must run
the +relocate-sdk.sh+ script to make sure all paths are updated with
the new location.

