示例如下:

#include <stdio.h>  
#include <stdlib.h>
#include <dlfcn.h>
#include <signal.h>
#include <errno.h>

#define SO_FILE "test.so"
typedef int (*FUN_CALL)(int, int);

int main(const int argc, const char** argv)
{
void *pLib = NULL;
FUN_CALL call = NULL;

plib = dlopen(SO_FILE, RTLD_NOW | RTLD_GLOBAL);
if ( NULL == plib )
{
printf("%s\n", dlerror());
return -1;
}

call = dlsym(pLib , "call");
if ( NULL == call)
{
//ERROR
return -1;
}
call(0, 1);

  //养成良好习惯
dlclose(pLib);
}