我使用dlopen、dlsym 加载库函数。运行程序时遇到了这个问题:</p>
- 使用dlopen加载函数,调用函数正确但结果不正确
- 不要用dlopen直接调用函数,结果是正确的
我怎样才能找到问题?
例子:</p>
void *dl_handle = NULL;
char *error = NULL;
/* Open the shared object */
dl_handle = dlopen(pLibraryName, RTLD_LAZY );
if (!dl_handle)
{
return -1
}
char* error = NULL;
pFunc = dlsym( dlHandle, "mysql_rollback");
error = dlerror();
if (error != NULL)\
{
return -1
}