[Buildroot] Allow building a toolchain without (non-trivial) dependencies

Yann E. MORIN yann.morin.1998 at free.fr
Wed Mar 28 19:25:36 UTC 2018


Norbert, All,

On 2018-03-28 20:57 +0200, Norbert Lange spake thusly:
> I would like to have an option to make a reasonable "portable" toolchain,
> means no dependencies apart from the C libs (libc libm libdl).
> 
> As you see below, I cant run the toolchain without keeping the libs
> around and setting the LD path,
> limiting its use outside the (locally built) rootfs.
> 
> ie. all support libs from gcc should be optionally linked statically
> 
> $ ldd cc1plus
> linux-vdso.so.1 (0x00007ffdacd5e000)
> libisl.so.15 => /usr/lib/x86_64-linux-gnu/libisl.so.15 (0x00007f591aad0000)
> libmpc.so.3 => /usr/lib/x86_64-linux-gnu/libmpc.so.3 (0x00007f591a8b7000)
> libmpfr.so.4 => not found
> libgmp.so.10 => /usr/lib/x86_64-linux-gnu/libgmp.so.10 (0x00007f591a633000)
> libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f591a42f000)
> libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f591a09c000)
> libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f5919ce2000)
> /lib64/ld-linux-x86-64.so.2 (0x00007f591ae78000)
> libmpfr.so.6 => /usr/lib/x86_64-linux-gnu/libmpfr.so.6 (0x00007f5919a60000)

Not so long ago, we introduced the notion of 'SDK', whereby you build
your toolchain, and as many libraries you want (which can be none for
a pure toolchain), and distribute that as an SDK, as explained in the
manual:

https://buildroot.org/downloads/manual/manual.html#_using_the_generated_toolchain_outside_buildroot

This is basically a three-step procedure:

  - first, you generate the SDK,

  - then you distribute the content of the host/ directory (supposedly
    as a tarball or other such archive),

  - the user extracts it and run a script that fixes the SDK for local
    use (presumable in another directory).

That is more flexible than just doing a static link of the toolchain,
and covers the case of distributing the toolchain too, so there we go...
;-)

Regards,
Yann E. MORIN.

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'


More information about the buildroot mailing list