Re: GDB and debug fission
Sterling Augustine via Gdb <[email protected]>
| Newsgroups | gmane.comp.gdb.devel |
|---|---|
| Message-ID | <CAEG7qUxwiBotg-ev57m8g=LT6iicoMZs0nTbQhCvspui=KrPAA@mail.gmail.com> |
On Thu, Jan 7, 2021 at 5:25 PM Alexander Yermolovich via Gdb <[email protected]> wrote: > > Hello. > > For latest gdb to work with -gsplit-dwarf debug information generated by clang, either in split or single mode does it need gdb_index or pubnames? > In normal case where debug information is part of executable gdb_index is nice to speed up startup time, and I think I read pubnames is not used, but with debug fission are either gdb_index or pubnames necessary? For gdb to work with split-dwarf debug info, it needs a gdb_index. That can be generated in several ways. Gdb can build one itself--there is a script somewhere to add a gdb index. But it is somewhat easier to have the linker you use generate gdb_index for you (both gnu-ld and llvm's lld can do this). They do this by reading the .gnu_pubnames section, so in some way, you need both pubnames *and* an index. So you would ordinarily use the following commands: $(CC) $(normal_arguments) -ggnu-pubnames $(LD) $(normal_arguments) -Wl,--gdb-index