我正在阅读Makefile
,其中我看到-lz -ldl -ldw
链接器选项被传递给gcc
。
我的Linux系统上没有安装此库,因此编译失败
我的问题是如何确定通常从这些链接器选项安装的库。上面的链接器选项只是示例,但我想知道如何在这种情况下确定一般的库。
答案 0 :(得分:1)
我认为正如@keltar所述,您最好的猜测是从要删除的库中删除-l,而是添加lib
并在系统中将其作为包名称进行搜索。
举个例子,如果你有-lz
,你可以做
apt-cache search libz
或
yum search libz
看看是否有明显的安装候选人。如果这没有帮助,您可以查找由已经提到的相同原理构造的文件名。
在-ldl
的情况下,您会想出libdl.so
,然后您就可以:
apt-file search libdl.so
给出了一些命中。
这有帮助吗?