What is debugging information?

Status
Not open for further replies.

naseeam

Member
I work on PowerPC based Embedded Systems. Programming language is C. Cross compiler is Diab 4.2b. FYI, Windriver has purchased Diab. Along with the compiler comes a utility called ddump. This utility has the following syntax.

ddump [command] file

I invoke this utility as follows:

ddump -D filename.elf
I believe .elf stands for executable linking format. Anyways, this command means to dump the DWARF debugging information in each object file. I think when this utitliy is run it generates bunch of paths to the source code. These source paths are loaded into the debugger. Then, we type some command in debugger to load symbols. Then, somehow source code that matches the binary image in our target hardware appears in the debugger. How does all this work? What is DWARF?

Thanks,
 
https://dwarfstd.org/PressRelease.php

The debugging code is put into the software at compile time. It's extra identifcation material (not executable code) so that simulation software or debugging tools can figure out where it is in the program if an error occurs, or retrieve runtime information. It's virtually impossible to determine code location when it's pure machine code without the debug information included. It's usually not in final release software as it clutters up the executable or DLL's with code that's not needed for normal software operation.
 
Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…