The Art Of Debugging With Gdb And Ddd: With GDB and Eclipse by Norman MatloffThe Art Of Debugging With Gdb And Ddd: With GDB and Eclipse by Norman Matloff

The Art Of Debugging With Gdb And Ddd: With GDB and Eclipse

byNorman Matloff, Peter Jay Salzman

Paperback | September 28, 2008

Pricing and Purchase Info


Earn 260 plum® points

Prices and offers may vary in store

Out of stock online

Not available in stores


Debugging is crucial to successful software development, but even many experienced programmers find it challenging. Sophisticated debugging tools are available, yet it may be difficult to determine which features are useful in which situations. The Art of Debugging is your guide to making the debugging process more efficient and effective.

The Art of Debugging illustrates the use three of the most popular debugging tools on Linux/Unix platforms: GDB, DDD, and Eclipse. The text-command based GDB (the GNU Project Debugger) is included with most distributions. DDD is a popular GUI front end for GDB, while Eclipse provides a complete integrated development environment.

In addition to offering specific advice for debugging with each tool, authors Norm Matloff and Pete Salzman cover general strategies for improving the process of finding and fixing coding errors, including how to:

Inspect variables and data structuresUnderstand segmentation faults and core dumpsKnow why your program crashes or throws exceptionsUse features like catchpoints, convenience variables, and artificial arraysAvoid common debugging pitfalls

Real world examples of coding errors help to clarify the authors' guiding principles, and coverage of complex topics like thread, client-server, GUI, and parallel programming debugging will make you even more proficient. You'll also learn how to prevent errors in the first place with text editors, compilers, error reporting, and static code checkers.

Whether you dread the thought of debugging your programs or simply want to improve your current debugging efforts, you'll find a valuable ally in The Art of Debugging.

Norman Matloff, a computer science professor at UC Davis, is the author of several popular public-domain software packages and online tutorials.
Title:The Art Of Debugging With Gdb And Ddd: With GDB and EclipseFormat:PaperbackDimensions:280 pages, 9.25 × 7 × 0.89 inPublished:September 28, 2008Publisher:No Starch PressLanguage:English

The following ISBNs are associated with this title:

ISBN - 10:1593271743

ISBN - 13:9781593271749

Look for similar items by category:


Table of Contents

PREFACE; Chapter 1: SOME PRELIMINARIES FOR BEGINNERS AND PROS; 1.1 Debugging Tools Used in This Book; 1.2 Programming Language Focus; 1.3 The Principles of Debugging; 1.4 Text-Based vs. GUI-Based Debugging Tools, and a Compromise Between Them; 1.5 Main Debugger Operations; 1.6 Online Help; 1.7 Introductory Debugging Session; 1.8 Use of Startup Files; Chapter 2: STOPPING TO TAKE A LOOK AROUND; 2.1 Mechanisms for Pause; 2.2 Overview of Breakpoints; 2.3 Keeping Track of Breakpoints; 2.4 Setting Breakpoints; 2.5 Extended GDB Example; 2.6 Persistence of Breakpoints; 2.7 Deleting and Disabling Breakpoints; 2.8 More on Viewing Breakpoint Attributes; 2.9 Resuming Execution; 2.10 Conditional Breakpoints; 2.11 Breakpoint Command Lists; 2.12 Watchpoints; Chapter 3: INSPECTING AND SETTING VARIABLES; 3.1 Our Main Example Code; 3.2 Advanced Inspection and Setting of Variables; 3.3 Setting Variables from Within GDB/DDD/Eclipse; 3.4 GDB's Own Variables; Chapter 4: WHEN A PROGRAM CRASHES; 4.1 Background Material: Memory Management; 4.2 Core Files; 4.3 Extended Example; Chapter 5: DEBUGGING IN A MULTIPLE-ACTIVITIES CONTEXT; 5.1 Debugging Client/Server Network Programs; 5.2 Debugging Threaded Code; 5.3 Debugging Parallel Applications; 5.4 Extended Example; Chapter 6: SPECIAL TOPICS; 6.1 What If It Doesn't Even Compile or Load?; 6.2 Debugging GUI Programs; Chapter 7: OTHER TOOLS; 7.1 Making Good Use of a Text Editor; 7.2 Making Good Use of the Compiler; 7.3 Error Reporting in C; 7.4 Better Living with strace and ltrace; 7.5 Static Code Checkers: lint and Friends; 7.6 Debugging Dynamically Allocated Memory; Chapter 8: USING GDB/DDD/ECLIPSE FOR OTHER LANGUAGES; 8.1 Java; 8.2 Perl; 8.3 Python; 8.4 Debugging SWIG Code; 8.5 Assembly Language; COLOPHON;