什么是cmake中的MODULE库类型?

时间:2017-04-18 06:31:43

标签: cmake shared-libraries dlopen

cmake add_library文档说明,

  

SHARED库是动态链接的   并在运行时加载。 MODULE库是不是的插件   链接到其他目标但可以在运行时动态加载   使用类似dlopen的功能。

实际上,我可以看到SHAREDMODULE类型目标在Linux上生成.so动态库。 .so库是动态链接的,在运行时加载并使用dlopen()进行映射。这两种目标有何不同?

1 个答案:

答案 0 :(得分:3)

MODULE只打算使用dlopen加载。您无法target_link_libraries()访问MODULE库。

正如文档所述,MODULE关键字应该用于强调某个库是某种类型的插件,并且不应该使用-l标记进行链接。