Toolbox
This page has information about developing Embedded Linux, including links to toolchains, debuggers and other development tools. Also, it has links to pages with debugging tips.
Development Tools
Toolchains
- see Toolchains
Debuggers
- Open On-Chip Debugger
- GDB - The GNU debugger
- DDD - Data Display Debugger
- kgdb - kernel source level debugger
- valgrind - memory, cache and other debuggers and profilers
Integrated Development Environments
- Eclipse - Powerfull IDE written in JAVA.
- jEdit - Editor written in JAVA which can be expanded to a full IDE with plug-ins.
- KDevelop - Standard IDE for KDE.
- Emacs - Powerful IDE, extensible in LISP, ships with modes to integrates with SCM (GIT, SVN, CVS...), build systems, debugger and even fancy multi-window with ECB.
- VIm - Powerful IDE, extensible with scripting, can use various modules for completion and more.
- KScope - Cscope based source editing environment with KDE.
- FIXTHIS - need more links for IDEs
Emulators
Tracers and Profilers
- see Kernel Trace Systems
- see Profilers
Benchmarks
Source Management Tools
There are a number of tools for managing patches, which are useful for different tasks. There's now a whole page devoted to this. See Source Management Tools
For some simple tools for managing patches, see Diff And Patch Tricks
Test Systems
- See Test Systems
Developer Resources
Kernel mailing lists, web sites, etc.
Documentation
Online
- Linux Device Drivers, 3rd edition - http://lwn.net/Kernel/LDD3/
- Papers from the Ottawa Linux Symposium - broken out - see http://kernel.org/doc/ols/
- Embedded Linux kernel and driver development - http://free-electrons.com/training/drivers
- Free Software tools for embedded systems - http://free-electrons.com/training/devtools
- Real time in embedded Linux systems - http://free-electrons.com/articles/realtime/
- Embedded Linux optimizations - http://free-electrons.com/articles/optimizations
- Audio in embedded Linux systems - http://free-electrons.com/training/audio
- Multimedia in embedded Linux systems - http://free-electrons.com/training/multimedia
- Embedded Linux From Scratch... in 40 minutes! - http://free-electrons.com/articles/elfs/
Books
- Embedded Linux System Design and Development - by P. Raghavan, Amol Lad, and Sriram Neelakandan (Hardcover - Dec 21, 2005)
- This one looks quite good.
- Embedded Linux Primer: A Practical Real-World Approach - by Christopher Hallinan
- So does this one.
- Building Embedded Linux Systems - by Karim Yaghmour
- Be sure to get the second edition (from 2008). The first edition (from 2003) is outdated.
- Advanced Programming in the UNIX Environment by the late W. Richard Stevens and Stephen A. Rago
- Not embedded specific, but THE reference for Linux/Unix programming
- Linux System Programming - by Robert Love
- Good introduction to Linux system programming
See also Category:Books
Podcasts
- http://www.timesys.com/resources/podcast - a series of podcasts from timesys (on linux of course)
Code Style Tips
- This section is for good Code Styling Tips
- Extern_Vs_Static_Inline Here is a short explanation on the proper use of "inline" keyword.
Debugging Tips
- See the Kernel Debugging Tips page
- See also Debugging Makefiles
- Printk
GCC Tips and Tricks
- This section of GCC Tips is a collection of tips and tricks helpful for embedded developers
Network Setup
- Settings up a Bluetooth Network