Presentation is loading. Please wait.

Presentation is loading. Please wait.

2009-10-15(C) 2009 Yann E. MORIN1 Embedded Linux Conference / Europe - October 2009 Building our own toolchains for our embedded projects: Why, and how.

Similar presentations


Presentation on theme: "2009-10-15(C) 2009 Yann E. MORIN1 Embedded Linux Conference / Europe - October 2009 Building our own toolchains for our embedded projects: Why, and how."— Presentation transcript:

1 2009-10-15(C) 2009 Yann E. MORIN1 Embedded Linux Conference / Europe - October 2009 Building our own toolchains for our embedded projects: Why, and how to.

2 2009-10-15(C) 2009 Yann E. MORIN2 Contact, license, disclaimer Yann E. MORIN yann.morin.1998@anciens.enib.fr http://ymorin.is-a-geek.org/ License for this paper: Creative Commons BY-NC-SA 3.0 This presentation is not endorsed by my current employer

3 2009-10-15(C) 2009 Yann E. MORIN3 Pre-built toolchains Using pre-built toolchains: Origins, pros & cons.

4 2009-10-15(C) 2009 Yann E. MORIN4 Pre-built toolchains ➢ HW vendor – As part of a BSP ➢ Third party – As a product ➢ In-house – From another dept. – From another project ➢ The Community – From a project using a similar HW – As packaged by a distribution (emdebian...) Origins

5 2009-10-15(C) 2009 Yann E. MORIN5 Pre-built toolchains ➢ Easy to install, ready to use – Tarball – Packaged ➢ Proven, tested ➢ Optimised – By HW vendor for its processor ➢ Supported (maintenance, updates) – By HW vendor – Third party: paid support – Community-based Pros

6 2009-10-15(C) 2009 Yann E. MORIN6 Pre-built toolchains ➢ General purpose – No optimisation for your specific processor ➢ Specialised – Optimised for a processor other than your own ➢ Ageing – using old versions of the components – No support for newer processors/features/optimisations ➢ Unknown source code status vs. upstream – Unknown patchset – Different patchsets between targets ➢ May not fit your build system – Not relocatable – No easy way to retrieve the system libraries Cons

7 2009-10-15(C) 2009 Yann E. MORIN7 Building our own toolchains Building our own toolchains: Origins, pros & cons.

8 2009-10-15(C) 2009 Yann E. MORIN8 Building our own toolchains ➢ Sources from upstream Origins

9 2009-10-15(C) 2009 Yann E. MORIN9 Building our own toolchains ➢ Your choice of components versions ➢ Optimised for your processor ➢ Known patchset (if any) ➢ Same source for all targets ➢ Upstream fixes easy to apply ➢ Reproducible ➢ Community-based support ➢ Fits your build-system Pros

10 2009-10-15(C) 2009 Yann E. MORIN10 ➢ Build complexity ➢ Bad support for your processor – Missing, incomplete and/or improper patches from chip ‑ co ➢ Validation ➢ Community-based support Building our own toolchains Cons

11 2009-10-15(C) 2009 Yann E. MORIN11 Existing tools Building our own toolchains: Existing tools.

12 2009-10-15(C) 2009 Yann E. MORIN12 Existing tools Some of them... ➢ crosstool ➢ OSELAS.Toolchain() ➢ crossdev (Gentoo) ➢ crossdev/tsrpm ➢ crosstool-NG ➢ buildroot, and derivatives (OpenWRT...) ➢ bitbake, OpenEmbedded ➢ Internal tools

13 2009-10-15(C) 2009 Yann E. MORIN13 Existing tools crosstool-NG ➢ Purpose ➢ build toolchains ➢ only build toolchains ➢ Goals ➢ easy to use ➢ easy to maintain ➢ easy to enhance ➢ Design ➢ modular ➢ API ➢ isolated components ➢ one config file ➢ one build script ➢ known patchset ➢ alternatives ➢ C libraries ➢ Kernels ➢ Compilers (future work...) ➢ kconfig-based configuration ➢ "goodies" ➢ usefull debug tools (gdb, strace...) ➢ pre-configured sample toolchains

14 2009-10-15(C) 2009 Yann E. MORIN14 The end Thank you!


Download ppt "2009-10-15(C) 2009 Yann E. MORIN1 Embedded Linux Conference / Europe - October 2009 Building our own toolchains for our embedded projects: Why, and how."

Similar presentations


Ads by Google