在编译dynlinktest.c期间,它出现以下错误:
unipro @ ubuguest:〜$ cc dynamiclinktest.c -o dynamiclinktest
/tmp/ccli8dp2.o:在函数main':
dynamiclinktest.c:(.text+0x53): undefined reference to
dlopen'中
dynamiclinktest.c :(。text + 0x83):对dlsym'
dynamiclinktest.c:(.text+0x109): undefined reference to
dlclose'的未定义引用
collect2:ld返回1退出状态
使用cc dynlinktest.c -o dynlinktest -ldl之后运行。
我不明白为什么需要使用-ldl
?
edit1:错误前留空。
答案 0 :(得分:5)
-ldl
包含对具有加载动态库的符号的库的引用(例如dlopen
)。