Download presentation
Presentation is loading. Please wait.
Published bySharon Booker Modified over 8 years ago
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!
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.