Dwarf Error: wrong version in compilation unit header

M R Swami Reddy MR.Swami.Reddy@nsc.com
Tue Aug 25 12:12:00 GMT 2009


Hi Nick,
Thanks for the reply.
> Try looking at the executable with "readelf -w".
>   
With readelf, below warning messages displayed:
===
 >cr16-elf-readelf -w a.x.new > r.new
readelf: Warning: Bogus end-of-siblings marker detected at offset c in 
.debug_info section
readelf: Warning: Bogus end-of-siblings marker detected at offset d in 
.debug_info section
readelf: Warning: Bogus end-of-siblings marker detected at offset e in 
.debug_info section
readelf: Warning: Further warnings about bogus end-of-sibling markers 
suppressed
readelf: Warning: DIE at offset 13 refers to abbreviation number 6 which 
does not exist
readelf: Warning: DIE at offset 13 refers to abbreviation number 6 which 
does not exist
readelf: Warning: Unable to load/parse the .debug_info section, so 
cannot interpret the .debug_line section.
readelf: Warning: Unable to load/parse the .debug_info section, so 
cannot interpret the .debug_loc section.

> Probably cause: The evaluation in the linker of the relocs created for 
> the symbol difference expression is broken somehow and is changing the 
> wrong bytes in the .debug_info section.
>   
Could be the reason. With symbol diff. expression, .debug_info section also
has SYM_DIF reloc, that could be causing the problem. I will double 
chcek this.

Thanks
Swami




More information about the Binutils mailing list