From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: multipart/mixed; boundary="===============5921565098331952036==" MIME-Version: 1.0 From: buddhika chamith To: elfutils-devel@lists.fedorahosted.org Subject: Re: Libdw sample for reading function names and addresses Date: Mon, 10 Nov 2014 23:41:52 -0500 Message-ID: In-Reply-To: m2y4rjakct.fsf@redhat.com --===============5921565098331952036== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Thanks for the replies. I will have a look. Will get back if I get further issues. Regards Bud On Sun, Nov 9, 2014 at 8:57 PM, Petr Machata wrote: > Mark Wielaard writes: > > > On Sat, 2014-11-08 at 22:00 -0500, buddhika chamith wrote: > >> I have a requirement to read off function names and addresses from an > >> ELF binary debug symbols. Is there any such piece of code that's > >> already there that you have written? I had a look at some elfutils > >> codes (e.g: nm.c) in the hope of adapting them to my requirement. But > >> the libdw API is seems bit intimidating to me given that I have > >> little knowledge on Dwarf format. > > > > There is no such thing as "debug symbols". There are various DIEs (Debug > > Information Entries) that can be associated with particular address > > ranges though. You might want to read a bit about DWARF at > > http://dwarfstd.org/ > > There's also .symtab, if that's enough. dwfl_module_getsymtab and > dwfl_module_getsym should be able to retrieve it even from a separate > debug-info file, in case it was stripped, otherwise gelf_getsym would be > enough (and easier to set up than Dwfl). > > Petr. > --===============5921565098331952036== Content-Type: text/html MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="attachment.html" PGRpdiBkaXI9Imx0ciI+PGRpdj5UaGFua3MgZm9yIHRoZSByZXBsaWVzLiBJIHdpbGwgaGF2ZSBh IGxvb2suIFdpbGwgZ2V0IGJhY2sgaWYgSSBnZXQgZnVydGhlciBpc3N1ZXMuPGJyPjxicj48L2Rp dj5SZWdhcmRzPGJyPkJ1ZDxicj48L2Rpdj48ZGl2IGNsYXNzPSJnbWFpbF9leHRyYSI+PGJyPjxk aXYgY2xhc3M9ImdtYWlsX3F1b3RlIj5PbiBTdW4sIE5vdiA5LCAyMDE0IGF0IDg6NTcgUE0sIFBl dHIgTWFjaGF0YSA8c3BhbiBkaXI9Imx0ciI+Jmx0OzxhIGhyZWY9Im1haWx0bzpwbWFjaGF0YUBy ZWRoYXQuY29tIiB0YXJnZXQ9Il9ibGFuayI+cG1hY2hhdGFAcmVkaGF0LmNvbTwvYT4mZ3Q7PC9z cGFuPiB3cm90ZTo8YnI+PGJsb2NrcXVvdGUgY2xhc3M9ImdtYWlsX3F1b3RlIiBzdHlsZT0ibWFy Z2luOjAgMCAwIC44ZXg7Ym9yZGVyLWxlZnQ6MXB4ICNjY2Mgc29saWQ7cGFkZGluZy1sZWZ0OjFl eCI+PHNwYW4gY2xhc3M9IiI+TWFyayBXaWVsYWFyZCAmbHQ7PGEgaHJlZj0ibWFpbHRvOm1qd0By ZWRoYXQuY29tIj5tandAcmVkaGF0LmNvbTwvYT4mZ3Q7IHdyaXRlczo8YnI+Cjxicj4KJmd0OyBP biBTYXQsIDIwMTQtMTEtMDggYXQgMjI6MDAgLTA1MDAsIGJ1ZGRoaWthIGNoYW1pdGggd3JvdGU6 PGJyPgo8L3NwYW4+PHNwYW4gY2xhc3M9IiI+Jmd0OyZndDsgSSBoYXZlIGEgcmVxdWlyZW1lbnQg dG8gcmVhZCBvZmYgZnVuY3Rpb24gbmFtZXMgYW5kIGFkZHJlc3NlcyBmcm9tIGFuPGJyPgomZ3Q7 Jmd0OyBFTEYgYmluYXJ5IGRlYnVnIHN5bWJvbHMuIElzIHRoZXJlIGFueSBzdWNoIHBpZWNlIG9m IGNvZGUgdGhhdCYjMzk7czxicj4KJmd0OyZndDsgYWxyZWFkeSB0aGVyZSB0aGF0IHlvdSBoYXZl IHdyaXR0ZW4/IEkgaGFkIGEgbG9vayBhdCBzb21lIGVsZnV0aWxzPGJyPgomZ3Q7Jmd0OyBjb2Rl cyAoZS5nOiBubS5jKSBpbiB0aGUgaG9wZSBvZiBhZGFwdGluZyB0aGVtIHRvIG15IHJlcXVpcmVt ZW50LiBCdXQ8YnI+CiZndDsmZ3Q7IHRoZSBsaWJkdyBBUEkgaXMgc2VlbXMgYml0IGludGltaWRh dGluZyB0byBtZSBnaXZlbiB0aGF0IEkgaGF2ZTxicj4KJmd0OyZndDsgbGl0dGxlIGtub3dsZWRn ZSBvbiBEd2FyZiBmb3JtYXQuPGJyPgomZ3Q7PGJyPgomZ3Q7IFRoZXJlIGlzIG5vIHN1Y2ggdGhp bmcgYXMgJnF1b3Q7ZGVidWcgc3ltYm9scyZxdW90Oy4gVGhlcmUgYXJlIHZhcmlvdXMgRElFcyAo RGVidWc8YnI+CiZndDsgSW5mb3JtYXRpb24gRW50cmllcykgdGhhdCBjYW4gYmUgYXNzb2NpYXRl ZCB3aXRoIHBhcnRpY3VsYXIgYWRkcmVzczxicj4KJmd0OyByYW5nZXMgdGhvdWdoLiBZb3UgbWln aHQgd2FudCB0byByZWFkIGEgYml0IGFib3V0IERXQVJGIGF0PGJyPgomZ3Q7IDxhIGhyZWY9Imh0 dHA6Ly9kd2FyZnN0ZC5vcmcvIiB0YXJnZXQ9Il9ibGFuayI+aHR0cDovL2R3YXJmc3RkLm9yZy88 L2E+PGJyPgo8YnI+Cjwvc3Bhbj5UaGVyZSYjMzk7cyBhbHNvIC5zeW10YWIsIGlmIHRoYXQmIzM5 O3MgZW5vdWdoLsKgIGR3ZmxfbW9kdWxlX2dldHN5bXRhYiBhbmQ8YnI+CmR3ZmxfbW9kdWxlX2dl dHN5bSBzaG91bGQgYmUgYWJsZSB0byByZXRyaWV2ZSBpdCBldmVuIGZyb20gYSBzZXBhcmF0ZTxi cj4KZGVidWctaW5mbyBmaWxlLCBpbiBjYXNlIGl0IHdhcyBzdHJpcHBlZCwgb3RoZXJ3aXNlIGdl bGZfZ2V0c3ltIHdvdWxkIGJlPGJyPgplbm91Z2ggKGFuZCBlYXNpZXIgdG8gc2V0IHVwIHRoYW4g RHdmbCkuPGJyPgo8c3BhbiBjbGFzcz0iSE9FblpiIj48Zm9udCBjb2xvcj0iIzg4ODg4OCI+PGJy PgpQZXRyLjxicj4KPC9mb250Pjwvc3Bhbj48L2Jsb2NrcXVvdGU+PC9kaXY+PGJyPjwvZGl2Pgo= --===============5921565098331952036==--