Difference between revisions of "Toolbox"

From eLinux.org
Jump to: navigation, search
(Documentation)
(92 intermediate revisions by 23 users not shown)
Line 1: Line 1:
 
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.
 
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 ==
+
<div style="width=100%; background:#FFF;">
=== Toolchains ===
+
{| width="100%" cellspacing="5" cellpadding="0" valign="top" style="background:inherit;"
* see [[Toolchains]]
+
| valign="top" style="margin: 0 0 0.5em 1em; border:1px solid #aaa; text-align:left; width: 33%;" cellpadding="5"  |
=== Debuggers ===
+
<div style="background: #eeeeee; border: 1px solid #2C547A; padding: 5px; margin: 3px; font-weight:bold;text-align:center;font-size:120%;">Development Tools</div>
* [http://openocd.berlios.de/web/ Open On-Chip Debugger]
+
<div style="margin: 0 0 0 1em;">
* FIXTHIS - need link for debuggers (DDD, gdb, kgdb, etc.)eclipse
+
;[[Logic_Analyzers]]
 +
;[[Toolchains]]
 +
;[[Build Systems]]
 +
;[[Embedded Linux Distributions]]
 +
;[[Debuggers]]
 +
;[[Memory Debuggers]]
 +
;[[Tools]]
 +
;[[Integrated Development Environments]]
 +
;[[Emulators]]
 +
;[[Tracers and Profilers]]
 +
;[[Benchmark Programs | Benchmarks]]
 +
;[[Source Management Tools]]
 +
;[[Test Systems]]
 +
;[[Test Tools]]
 +
;[[Scripting]]
  
=== Integrated Development Environments ===
 
* FIXTHIS - need link for IDEs (eclipse, etc.)
 
  
=== Tracers and Profilers ===
+
</div>
* see [[Kernel Trace Systems]]
+
| valign="top" style="margin: 0 0 0.5em 1em; border:1px solid #aaa; text-align:left; width: 33%;" cellpadding="5"|
 +
<div style="background: #eeeeee; border: 1px solid #2C547A; padding: 5px; margin: 3px; font-weight:bold;text-align:center;font-size:120%;">Developer Resources </div>
 +
<div style="margin: 0 0 0 1em;">
 +
;[[Linux Kernel Resources]]
 +
;Kernel Subsystems
 +
*[http://www.linusakesson.net/programming/tty/index.php The TTY Demystified] - excellent explanation of kernel tty system
 +
* [[Device Tree]] - a structure used to describe system hardware at startup - can be passed or modified by firmware, or built into kernel
 +
;Online Documentation
 +
* [http://kernel.org/doc/ols/ Papers from the Ottawa Linux Symposium]
 +
* [http://free-electrons.com/training/devtools Free Software tools for embedded systems]
 +
* [http://free-electrons.com/articles/realtime/ Real time in embedded Linux systems]
 +
* [http://free-electrons.com/articles/optimizations Embedded Linux optimizations]
 +
* [http://free-electrons.com/training/audio Audio in embedded Linux systems]
 +
* [http://free-electrons.com/training/multimedia Multimedia in embedded Linux systems]
 +
* [http://free-electrons.com/articles/elfs/ Embedded Linux From Scratch... in 40 minutes!]
 +
* [http://www.makelinux.net/reference Linux technology reference]
 +
;[[:Category:Books| Books]]
 +
;[[Reference Material]]
 +
;[[Podcasts]]
 +
;[[Device drivers]]
 +
;[[Beginning Programming]]
  
=== Benchmarks ===
+
</div>
* see [[Benchmark Programs]]
+
|-
 +
| valign="top" style="margin: 0 0 0.5em 1em; border:1px solid #aaa; text-align:left; width: 33%;" cellpadding="5"|
 +
<div style="background: #eeeeee; border: 1px solid #2C547A; padding: 5px; margin: 3px; font-weight:bold;text-align:center;font-size:120%;">Tips and Tricks</div>
 +
<div style="margin: 0 0 0 1em;">
 +
;[[Chip_Identification|How to Identify IC Markings]]
 +
;[[Code Styling Tips]]
 +
;[[Debugging Tips]]
 +
;[[GDB Tips]]
 +
;[[GCC Tips]]
 +
;[[:Category:Tips and Tricks]]
 +
</div>
  
=== Source Management Tools ===
+
| valign="top" style="margin: 0 0 0.5em 1em; border:1px solid #aaa; text-align:left; width: 33%;" cellpadding="5"|
There are a number of tools for managing patches, which are useful for different tasks.
+
<div style="background: #eeeeee; border: 1px solid #2C547A; padding: 5px; margin: 3px; font-weight:bold;text-align:center;font-size:120%;">Misc & Wishlist</div>
There's now a whole page devoted to this.  See [[Source Management Tools]]
+
<div style="margin: 0 0 0 1em;">
 +
;[[Bluetooth Network| Setting up a Bluetooth Network]]
 +
;[[Continuous Logging for Watchdog Timer Expiration]]
 +
;[[Crash Diagnostics]]
  
For some simple tools for managing patches, see [[Diff And Patch Tricks]]
+
</div>
 
+
|}
=== Test Systems ===
+
</div>
* See [[Test Systems]]
 
 
 
== Developer Resources ==
 
=== Kernel mailing lists, web sites, etc. ===
 
* See [[Linux Kernel Resources]]
 
 
 
=== 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
 
* Audio in embedded Linux systems - http://free-electrons.com/training/audio
 
* Multimedia in embedded Linux systems - http://free-electrons.com/training/multimedia
 
 
 
 
 
==== 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
 
** This book is a bit dated (the edition I have is from 2003, but it is still a great resource.
 
 
 
=== Code Style Tips ===
 
* This section is for good [[Code Styling Tips]]
 
 
 
=== Debugging Tips ===
 
* See the [[Kernel Debugging Tips]] page
 
* See also [[Debugging Makefiles]]
 
 
 
=== GCC Tips and Tricks ===
 
* This section of [[GCC Tips]] is a collection of tips and tricks helpful for embedded developers
 
 
 
== Embedded Linux Distributions ==
 
* see [[Embedded Linux Distributions]]
 
 
[[Category:Development Tools]]
 
[[Category:Development Tools]]
 +
[[Category:Tips and Tricks]]

Revision as of 14:00, 16 December 2013