#include <dlfcn.h> | |
#include <stdio.h> | |
#include <stdlib.h> | |
extern int call_me (void); | |
int | |
call_me (void) | |
{ | |
int (*fp) (void); | |
fp = dlsym (RTLD_DEFAULT, "foo"); | |
if (fp == NULL) | |
{ | |
printf ("cannot get address of foo in global scope: %s\n", dlerror ()); | |
exit (1); | |
} | |
return fp () - 42; | |
} |