图书馆dl在gcc中的意义

时间:2013-10-02 20:45:38

标签: c++ linux dynamic-library

我正在检查一个makefile,看看使用的库是:

LIBS = -lcppunit -ldl

lcppunit是单元测试库。什么是ldl呢?

3 个答案:

答案 0 :(得分:16)

答案 1 :(得分:16)

这是动态加载器的接口,它为客户端程序提供了执行操作的能力,例如显式加载其他库,在其中查找符号等。

大多数程序不需要显式地执行此类操作,因为链接器执行在加载程序和库本身时启用共享库的普通用法所需的操作。但是,聪明或尝试探索和操纵动态链接系统及其数据的程序需要显式访问。有些功能与Java中的反射类似,但有很大的局限性(例如仅适用于动态符号)

答案 2 :(得分:1)

libdl是插件架构中使用的动态链接库,具有良好定义的接口。至少我是如何看待它的。