[Buildroot] Creating an external toolchain [was: Re: Antw:Re: Antw: Antw:Re: libgcc build fails on Fedora15]
stevecalfee at gmail.com
Wed Sep 28 18:30:12 UTC 2011
On 09/27/11 23:05, Arnout Vandecappelle wrote:
> On Monday 26 September 2011 16:55:09, MARCEL JANSSEN wrote:
>> I just have one question which probably belongs in the faq (I may have
>> missed something as well). I can't yet figure out how to build the output
>> for different devices without recompiling the whole toolchain. I have
>> several different images which are just a little different in the sense
>> that they all have the same kernel but some different packages. It would
>> be great if I could just switch between configs and don't have to
>> recompile the whole toolchain again or even shared packages between those
> Buildroot supports an external toolchain, but it isn't easy to create one.
> The easiest is to use a crosstool-NG toolchain: build it, install it in some
> central place, and use it as an external toolchain from buildroot.
> It would be nice if buildroot also supported creation of an external
> toolchain (based on an internal toolchain config). The toolchain is currently
> built in output/host/usr/... and is not relocatable, so it's difficult to
> share it between different buildroot builds.
I use the internal buildroot toolchain as an external toolchain all the
time. I first checkout the buildroot tree into the ....tools directory.
I select some defaultconfig, then do a make menuconfig and remove
everything but the toolchain building. The make then trundles for a long
time and finally I get a toolchain. I can easily change toolchain
options, if the target system needs something not in the default.
Then I checkout another buildroot tree into a working directory, and use
the make defaultconfig. Then I make menuconfig and set it up using the
newly created tools tree toolchain as an external toolchain. This speeds
up the builds in the working directory, and I don't have to worry about
the dreaded "make clean" problem of wiping the tools.
More than one working buildroot configuration can use the same tools, as
long as the same tool options are used in all "parallel" working trees.
More information about the buildroot