* symbol maintenance @ 2006-11-24 13:44 Fabian Cenedese 2006-11-27 21:30 ` Jim Blandy 0 siblings, 1 reply; 7+ messages in thread From: Fabian Cenedese @ 2006-11-24 13:44 UTC (permalink / raw) To: gdb Hello After loading a file (without starting anything) I tried "maintenance check-symbols". I got lots of messages like: Global symbol `__7fixed32' only found in ..(path)..\Inos_typ.cpp psymtab Global symbol `IntOf__7fixed64' only found in ..(path)..\Inos_typ.cpp psymtab Global symbol `__7fixed64' only found in ..(path)..\Inos_typ.cpp psymtab Global symbol `__ml__FG7fixed32T0' only found in ..(path)..\Inos_typ.cpp psymtab Global symbol `__ml__FG7fixed64T0' only found in ..(path)..\Inos_typ.cpp psymtab Is this something to worry about? Does this indicate wrong debug info or an error in gdb? If it's nothing to worry about what's the use of these messages? Only for gdb interna? This is a gdb 6.5 cross-compiled with cygwin on WinXP for ppc. I:\cyghome\data\gdb-6.5\gdb>gdb --readnow GNU gdb 6.5 ..(GPL)... This GDB was configured as "--host=i686-pc-cygwin --target=powerpc-eabi". Setting up the environment for debugging gdb. No symbol table is loaded. Use the "file" command. No symbol table is loaded. Use the "file" command. /data/gdb-6.5/gdb/.gdbinit:8: Error in sourced command file: No breakpoint number 0. (gdb) file gccext3.x Reading symbols from /data/gdb-6.5/gdb/gccext3.x...unknown symbol type 0x1e...ex panding to full symbols...unsupported const value attribute form: 'DW_FORM_strin g'...const value length mismatch for 'ciOffline', got 8, expected 0...done. Are these warnings something to worry about? Thanks bye Fabi ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: symbol maintenance 2006-11-24 13:44 symbol maintenance Fabian Cenedese @ 2006-11-27 21:30 ` Jim Blandy 2006-11-28 11:39 ` Fabian Cenedese 0 siblings, 1 reply; 7+ messages in thread From: Jim Blandy @ 2006-11-27 21:30 UTC (permalink / raw) To: Fabian Cenedese; +Cc: gdb Fabian Cenedese <Cenedese@indel.ch> writes: > After loading a file (without starting anything) I tried "maintenance check-symbols". > I got lots of messages like: > > Global symbol `__7fixed32' only found in ..(path)..\Inos_typ.cpp psymtab > Global symbol `IntOf__7fixed64' only found in ..(path)..\Inos_typ.cpp psymtab > Global symbol `__7fixed64' only found in ..(path)..\Inos_typ.cpp psymtab > Global symbol `__ml__FG7fixed32T0' only found in ..(path)..\Inos_typ.cpp psymtab > Global symbol `__ml__FG7fixed64T0' only found in ..(path)..\Inos_typ.cpp psymtab > > Is this something to worry about? Does this indicate wrong debug info or an > error in gdb? If it's nothing to worry about what's the use of these messages? > Only for gdb interna? I don't think those matter... I don't know for sure, but since those are mangled C++ names, I'd expect that there's some kind of demangling going on that's confusing the consistency checks. > This is a gdb 6.5 cross-compiled with cygwin on WinXP for ppc. > > I:\cyghome\data\gdb-6.5\gdb>gdb --readnow > GNU gdb 6.5 > ..(GPL)... > This GDB was configured as "--host=i686-pc-cygwin --target=powerpc-eabi". > Setting up the environment for debugging gdb. > No symbol table is loaded. Use the "file" command. > No symbol table is loaded. Use the "file" command. > /data/gdb-6.5/gdb/.gdbinit:8: Error in sourced command file: > No breakpoint number 0. > (gdb) file gccext3.x > Reading symbols from /data/gdb-6.5/gdb/gccext3.x...unknown symbol type 0x1e...ex > panding to full symbols...unsupported const value attribute form: 'DW_FORM_strin > g'...const value length mismatch for 'ciOffline', got 8, expected 0...done. Those look more serious. GDB is trying to read DWARF debugging information, and it's malformed. What compiler are you using? What does 'objdump -h gccext3.x' say? ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: symbol maintenance 2006-11-27 21:30 ` Jim Blandy @ 2006-11-28 11:39 ` Fabian Cenedese 2006-11-28 19:42 ` Jim Blandy 0 siblings, 1 reply; 7+ messages in thread From: Fabian Cenedese @ 2006-11-28 11:39 UTC (permalink / raw) To: gdb >> This is a gdb 6.5 cross-compiled with cygwin on WinXP for ppc. >> >> (gdb) file gccext3.x >> Reading symbols from /data/gdb-6.5/gdb/gccext3.x...unknown symbol type 0x1e...ex >> panding to full symbols...unsupported const value attribute form: 'DW_FORM_strin >> g'...const value length mismatch for 'ciOffline', got 8, expected 0...done. > >Those look more serious. GDB is trying to read DWARF debugging >information, and it's malformed. What compiler are you using? What >does 'objdump -h gccext3.x' say? The used compiler is gcc 4.0.2, cross compiled for ppc. The files for gccext3 were compiled with -gdwarf-2 (no +, no O). Output of objdump -h gccext3.x: (Sections 0, 15-18 are selfmade, necessary for the embedded target) gccext3.x: file format elf32-big Sections: Idx Name Size VMA LMA File off Algn 0 .vtable 00001444 00000000 00000000 00010000 2**0 CONTENTS, ALLOC, LOAD, READONLY, CODE 1 .text 00099ff0 00001444 00001444 00011444 2**2 CONTENTS, ALLOC, LOAD, READONLY, CODE 2 .rodata 0000b720 0009b438 0009b438 000ab438 2**3 CONTENTS, ALLOC, LOAD, READONLY, DATA 3 .eh_frame 00000970 000a6b58 000a6b58 000b6b58 2**2 CONTENTS, ALLOC, LOAD, READONLY, DATA 4 .ctors 000000d8 000a74c8 000a74c8 000b74c8 2**2 CONTENTS, ALLOC, LOAD, DATA 5 .dtors 00000018 000a75a0 000a75a0 000b75a0 2**2 CONTENTS, ALLOC, LOAD, DATA 6 .got2 000002b0 000a75b8 000a75b8 000b75b8 2**0 CONTENTS, ALLOC, LOAD, DATA 7 .fixup 00000448 000a7868 000a7868 000b7868 2**2 CONTENTS, ALLOC, LOAD, DATA 8 .gcc_except_table 000000c8 000a7cb0 000a7cb0 000b7cb0 2**2 CONTENTS, ALLOC, LOAD, READONLY, DATA 9 .comment 00000ccf 000a7d78 000a7d78 000cbae4 2**0 CONTENTS, READONLY 10 .data 0000112c 000a8a48 000a8a48 000b8a48 2**3 CONTENTS, ALLOC, LOAD, DATA 11 .sdata 000000b0 000a9b74 000a9b74 000b9b74 2**2 CONTENTS, ALLOC, LOAD, DATA 12 .sbss 00000358 000a9c24 000a9c24 000b9c24 2**2 ALLOC 13 .sdata2 00000000 000a9f7c 000a9f7c 000b9f7c 2**2 CONTENTS, ALLOC, LOAD, READONLY, DATA 14 .bss 000028cc 000a9f80 000a9f80 000b9f7c 2**4 ALLOC 15 .startup 0000f270 000ac84c 000ac84c 000bc84c 2**2 CONTENTS, ALLOC, LOAD, READONLY, CODE 16 .struct_def 00000014 000bbabc 000bbabc 000cbabc 2**0 CONTENTS, ALLOC, LOAD, DATA 17 .struct_nam 00000014 000bbad0 000bbad0 000cbad0 2**0 CONTENTS, ALLOC, LOAD, DATA 18 .cache 00000000 000bc000 000bc000 000cc7b3 2**0 CONTENTS 19 .debug_abbrev 0001748c 00000000 00000000 000cc7b3 2**0 CONTENTS, READONLY, DEBUGGING 20 .debug_info 000d77c6 00000000 00000000 000e3c3f 2**0 CONTENTS, READONLY, DEBUGGING 21 .debug_line 000189ba 00000000 00000000 001bb405 2**0 CONTENTS, READONLY, DEBUGGING 22 .debug_frame 00014528 00000000 00000000 001d3dc0 2**2 CONTENTS, READONLY, DEBUGGING 23 .debug_pubnames 00016f20 00000000 00000000 001e82e8 2**0 CONTENTS, READONLY, DEBUGGING 24 .debug_aranges 000030d0 00000000 00000000 001ff208 2**0 CONTENTS, READONLY, DEBUGGING 25 .debug_str 0000b420 00000000 00000000 002022d8 2**0 CONTENTS, READONLY, DEBUGGING 26 .debug_loc 0001c2b9 00000000 00000000 0020d6f8 2**0 CONTENTS, READONLY, DEBUGGING 27 .debug_ranges 00001890 00000000 00000000 002299b1 2**0 CONTENTS, READONLY, DEBUGGING 28 .stab 00005004 00000000 00000000 0022b244 2**2 CONTENTS, READONLY, DEBUGGING 29 .stabstr 00002466 00000000 00000000 00230248 2**0 CONTENTS, READONLY, DEBUGGING Thanks bye Fabi ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: symbol maintenance 2006-11-28 11:39 ` Fabian Cenedese @ 2006-11-28 19:42 ` Jim Blandy 2006-11-29 9:24 ` Fabian Cenedese 2006-11-29 10:55 ` Fabian Cenedese 0 siblings, 2 replies; 7+ messages in thread From: Jim Blandy @ 2006-11-28 19:42 UTC (permalink / raw) To: Fabian Cenedese; +Cc: gdb Fabian Cenedese <Cenedese@indel.ch> writes: >>> This is a gdb 6.5 cross-compiled with cygwin on WinXP for ppc. >>> >>> (gdb) file gccext3.x >>> Reading symbols from /data/gdb-6.5/gdb/gccext3.x...unknown symbol type 0x1e...ex >>> panding to full symbols...unsupported const value attribute form: 'DW_FORM_strin >>> g'...const value length mismatch for 'ciOffline', got 8, expected 0...done. >> >>Those look more serious. GDB is trying to read DWARF debugging >>information, and it's malformed. What compiler are you using? What >>does 'objdump -h gccext3.x' say? > > The used compiler is gcc 4.0.2, cross compiled for ppc. > The files for gccext3 were compiled with -gdwarf-2 (no +, no O). Oh, so you have an ELF file, not a PE file. In that case, could you run 'readelf -wi gccext3.x', and post the output? If the DWARF in that file is valid, and GDB's reading it properly, then the problem is that GCC is producing information GDB can't use. But even in that case, GDB should be able to properly skip data it doesn't understand (DWARF is very good about that), so the answer to your original question is, no, you don't need to worry about that warning --- unless you're trying to use string constants and GDB doesn't seem to know their values. ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: symbol maintenance 2006-11-28 19:42 ` Jim Blandy @ 2006-11-29 9:24 ` Fabian Cenedese 2006-11-29 10:55 ` Fabian Cenedese 1 sibling, 0 replies; 7+ messages in thread From: Fabian Cenedese @ 2006-11-29 9:24 UTC (permalink / raw) To: gdb >>>> (gdb) file gccext3.x >>>> Reading symbols from /data/gdb-6.5/gdb/gccext3.x...unknown symbol type 0x1e...ex >>>> panding to full symbols...unsupported const value attribute form: 'DW_FORM_strin >>>> g'...const value length mismatch for 'ciOffline', got 8, expected 0...done. >>> >>>Those look more serious. GDB is trying to read DWARF debugging >>>information, and it's malformed. What compiler are you using? What >>>does 'objdump -h gccext3.x' say? >> >> The used compiler is gcc 4.0.2, cross compiled for ppc. >> The files for gccext3 were compiled with -gdwarf-2 (no +, no O). > >Oh, so you have an ELF file, not a PE file. In that case, could you >run 'readelf -wi gccext3.x', and post the output? If the DWARF in >that file is valid, and GDB's reading it properly, then the problem is >that GCC is producing information GDB can't use. > >But even in that case, GDB should be able to properly skip data it >doesn't understand (DWARF is very good about that), so the answer to >your original question is, no, you don't need to worry about that >warning --- unless you're trying to use string constants and GDB >doesn't seem to know their values. I uploaded the output (11MB uncompressed, 1MB zipped) here: http://www.speedyshare.com/512483789.html I looked for the definition of this mismatch variable in the source. It's: typedef signed char int8; const int8 ciOffline = 254; 254 for a signed char is not really nice, but that alone shouldn't confuse gdb or gcc, right? <2><6774b>: Abbrev Number: 92 (DW_TAG_variable) DW_AT_name : ciOffline DW_AT_decl_file : 6 DW_AT_decl_line : 142 DW_AT_type : <685a0> DW_AT_external : 1 DW_AT_declaration : 1 DW_AT_const_value : 8 byte block: ff ff ff ff ff ff ff fe I don't know what variable or entry would cause the "unsupported const value attribute form:'DW_FORM_string'", I can't find that string. Thanks bye Fabi ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: symbol maintenance 2006-11-28 19:42 ` Jim Blandy 2006-11-29 9:24 ` Fabian Cenedese @ 2006-11-29 10:55 ` Fabian Cenedese 2006-11-29 11:04 ` Fabian Cenedese 1 sibling, 1 reply; 7+ messages in thread From: Fabian Cenedese @ 2006-11-29 10:55 UTC (permalink / raw) To: gdb At 11:42 28.11.2006 -0800, Jim Blandy wrote: >Fabian Cenedese <Cenedese@indel.ch> writes: >>>> This is a gdb 6.5 cross-compiled with cygwin on WinXP for ppc. >>>> >>>> (gdb) file gccext3.x >>>> Reading symbols from /data/gdb-6.5/gdb/gccext3.x...unknown symbol type 0x1e...ex >>>> panding to full symbols...unsupported const value attribute form: 'DW_FORM_string'... Got it, this warning comes from a variable defined as: const char systemTable[] = "SYSTEM"; The warning is output in dwarf2_const_value where there really is no case for DW_FORM_string. bye Fabi ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: symbol maintenance 2006-11-29 10:55 ` Fabian Cenedese @ 2006-11-29 11:04 ` Fabian Cenedese 0 siblings, 0 replies; 7+ messages in thread From: Fabian Cenedese @ 2006-11-29 11:04 UTC (permalink / raw) To: gdb At 11:53 29.11.2006 +0100, you wrote: >At 11:42 28.11.2006 -0800, Jim Blandy wrote: > >>Fabian Cenedese <Cenedese@indel.ch> writes: >>>>> This is a gdb 6.5 cross-compiled with cygwin on WinXP for ppc. >>>>> >>>>> (gdb) file gccext3.x >>>>> Reading symbols from /data/gdb-6.5/gdb/gccext3.x...unknown symbol type 0x1e...ex >>>>> panding to full symbols...unsupported const value attribute form: 'DW_FORM_string'... > >Got it, this warning comes from a variable defined as: > >const char systemTable[] = "SYSTEM"; > >The warning is output in dwarf2_const_value where there really is no >case for DW_FORM_string. Ack, actually that's wrong, this variable has type DW_FORM_strp. The DW_FORM_string is produced by: static char aStructNamebasetable[] = "Base"; bye Fabi ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2006-11-29 11:04 UTC | newest] Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2006-11-24 13:44 symbol maintenance Fabian Cenedese 2006-11-27 21:30 ` Jim Blandy 2006-11-28 11:39 ` Fabian Cenedese 2006-11-28 19:42 ` Jim Blandy 2006-11-29 9:24 ` Fabian Cenedese 2006-11-29 10:55 ` Fabian Cenedese 2006-11-29 11:04 ` Fabian Cenedese
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox