Linux c++ エラー: 'dlopen' への未定義の参照 質問する

Linux c++ エラー: 'dlopen' への未定義の参照 質問する

私は Linux で C++ (Eclipse) を使用して作業しており、ライブラリを使用したいと考えています。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);
}

ベストアンサー1

libdlにリンクし、追加する必要があります

-ldl

リンカーオプションに

おすすめ記事