小编典典

Linux C ++错误:未定义对“ dlopen”的引用

linux

我在使用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);
}

阅读 721

收藏
2020-06-02

共1个答案

小编典典

您必须针对libdl进行链接,添加

-ldl

到您的链接器选项

2020-06-02