[Buildroot] external toolchain question

Thomas Petazzoni thomas.petazzoni at free-electrons.com
Wed Sep 15 19:19:03 UTC 2010


On Wed, 15 Sep 2010 19:17:03 +0100
William Wagner <will_wagner at carallon.com> wrote:

> I'm trying to get a crosstool-ng toolchain working and running into a 
> few problems. One thing I found with c++ support was that libstdc++
> was being copied into target/usr/lib but it was located in
> staging/lib.

What's inside staging/ is just a bare copy of the toolchain sysroot. As
the toolchain sysroot organization depends on the toolchain, libstdc++
might be located in lib/ or usr/lib in staging.

For the target, I thought that it'd be a good idea to have it under
usr/lib regardless of whether it was in lib/ or usr/lib/ in the staging
directory. This is because "essential" applications do not usually
depend on libstdc++, so the natural location for libsdc++ is usr/lib.

Is it causing any sort of problem for you ?

> As an aside what is the status of using a buildroot generated
> toolchain as an external toolchain?

It should work, my testing environment includes :

 * CodeSourcery toolchains (ARM, PowerPC, MIPS, sh)
 * Buildroot external toolchains (x86, ARM, AVR32, mipsel,
   powerpc, sh)
 * Crosstool-NG external toolchains (ARM glibc, ARM uclibc, i586
   uclibc, mips uclibc, powerpc uclibc)

All those toolchains work, at least in the cases I've tested, of course.

> Any instructions anywhere on how to do it?

 * Select architecture
 * In Build options, change the staging dir location to where you want
   the toolchain to be installed 
 * Disable the Busybox package
 * Disable the ext2 filesystem generation

That should be it.

Regards,

Thomas
-- 
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com


More information about the buildroot mailing list