[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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: