Re: gdb и elf
В Птн, 09/11/2007 в 12:56 +0300, Dmitry E. Oboukhov пишет:
> как адрес функции который выдает gdb преобразовать в смещение от начала
> elf-файла?
Судя по всему никак. То ж адрес в памяти, который зависим от состояния
памяти на момент выделения. Может капнуть в сторону man dlopen:
...
int dladdr(void *addr, Dl_info *info);
The function dladdr() takes a function pointer and tries to
resolve
name and file where it is located. Information is stored in the
Dl_info
structure:
typedef struct {
const char *dli_fname;/* Filename of defining object */
void *dli_fbase; /* Load address of that object */
const char *dli_sname;/* Name of nearest lower symbol */
void *dli_saddr; /* Exact value of nearest symbol */
} Dl_info;
...
Но, не уверен. Если чё получится, отпишитесь.
--
Покотиленко Костик <casper@meteor.dp.ua>
Reply to:
- Follow-Ups:
- Re: gdb и elf
- From: "Dmitry Fedorov" <dm.fedorov@gmail.com>
- gdb и elf
- From: "Dmitry E. Oboukhov" <dimka@avanto.org>
- References:
- gdb и elf
- From: "Dmitry E. Oboukhov" <dimka@avanto.org>