** Be sure to get the second edition (from 2008). The first edition (from 2003) is outdated.

+

−

+

−

* [http://www.amazon.com/Programming-Environment-Addison-Wesley-Professional-Computing/dp/0321525949/ref=sr_1_1?ie=UTF8&s=books&qid=1259788186&sr=8-1 Advanced Programming in the UNIX Environment, Second Edition] by the late W. Richard Stevens and Stephen A. Rago

+

−

** Not embedded specific, but THE reference for Linux/Unix programming

+

−

+

−

* [http://www.amazon.com/Linux-System-Programming-Robert-Love/dp/0596009585/ref=sr_1_1?ie=UTF8&s=books&qid=1259788281&sr=1-1 Linux System Programming] - by Robert Love

* [http://www.timesys.com/resources/podcast] - Timesys LinuxLink Radio. (Despite the name, it's has nothing to do with the older Linux Link podcast, and it's not on the radio. No longer updates on a regular schedule, but the archives are available.)

+

−

+

−

== Code Style Tips ==

+

−

* See [[Code Styling Tips]]

+

−

* see also [[Sparse]]

+

−

+

−

== Debugging Tips ==

+

−

* See the [[Kernel Debugging Tips]] page

+

−

* See also [[Debugging Makefiles]]

+

−

* [[Printk]]

+

−

* Debug user-space initialization:

+

−

** If you get a panic - "not syncing: Attempted to kill init!" it can be for many different reasons. Try setting CONFIG_DEBUG_USER=y in your .config and pass 'user_debug=255' in the kernel command line. That will give you a more verbose output about why user space programs crash. Thanks to Daniel Mack on the linux-arm-kernel mailing list for this tip.

+

−

+

−

== 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]]

+

−

+

−

+

−

= Wishlist Items =

+

−

*[[Continuous Logging for Watchdog Timer Expiration]]

+

−

*[[Crash Diagnostics]]

+

+

</div>

+

|}

+

</div>

[[Category:Development Tools]]

[[Category:Development Tools]]

+

[[Category:Tips and Tricks]]

Revision as of 21:00, 16 December 2013

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.