我在使用C ++(Eclipse)的Linux中工作,并且想要使用一个库。Eclipse显示了一个错误:
undefined reference to 'dlopen'
你知道解决方案吗?
这是我的代码:
#include <stdlib.h> #include <stdio.h> #include <dlfcn.h> int main(int argc, char **argv) { void *handle; double (*desk)(char*); char *error; handle = dlopen ("/lib/CEDD_LIB.so.6", RTLD_LAZY); if (!handle) { fputs (dlerror(), stderr); exit(1); } desk= dlsym(handle, "Apply"); if ((error = dlerror()) != NULL) { fputs(error, stderr); exit(1); } dlclose(handle); }
您必须针对libdl进行链接,添加
-ldl
到您的链接器选项