dladdr1
extern int dladdr1(void *, Dl_info *, void **, int);
if (dladdr1(pc, &info, (void **)&sym,
result = dladdr1(pointer, &sym_info, (void **)&ext_info,