-llibrary如何确定和定位object-file-name

时间:2014-07-01 07:41:53

标签: c++ c linux gcc makefile

我正在阅读Makefile,其中我看到-lz -ldl -ldw链接器选项被传递给gcc
我的Linux系统上没有安装此库,因此编译失败 我的问题是如何确定通常从这些链接器选项安装的库。上面的链接器选项只是示例,但我想知道如何在这种情况下确定一般的库。

1 个答案:

答案 0 :(得分:1)

我认为正如@keltar所述,您最好的猜测是从要删除的库中删除-l,而是添加lib并在系统中将其作为包名称进行搜索。 举个例子,如果你有-lz,你可以做

apt-cache search libz 

yum search libz

看看是否有明显的安装候选人。如果这没有帮助,您可以查找由已经提到的相同原理构造的文件名。 在-ldl的情况下,您会想出libdl.so,然后您就可以:

apt-file search libdl.so

给出了一些命中。

这有帮助吗?