/ usr / bin / ld:找不到-lnetlink

时间:2015-02-10 01:46:09

标签: linux gcc makefile

我正在尝试让我的同事开发并运行在新VM上的程序。机器开始时只有很少的实用程序(例如我必须安装make和gcc)并且我在makefile中执行以下gcc命令时遇到错误:

gcc -g -ggdb -Wall -Wextra -o <output_name> <files> -lcrypto -lssl -lnetfilter_queue -lnetlink -lpthread

当我尝试使用make时,收到以下消息:/usr/bin/ld: cannot find -lnetlink。我到处寻找解决方案但没有任何效果。我不知道lnetlink是什么或它做什么,因为我没有写任何这个程序。我最初与lcrypto,lssl和lnetfilter_queue有同样的问题,但能够修复lnetlink。另外,这个确切的makefile在运行相同操作系统(Debian)的旧VM上工作,安装了更多软件,因此我知道问题出在我的机器上而不是gcc命令。

我很乐意回答任何其他问题。非常感谢所有建议。

1 个答案:

答案 0 :(得分:0)

-lnetlink告诉链接器将生成的程序与libnetlink.so(在Linux上)链接。 Debian软件包中没有libnetlink.so,所以你应该搜索它来自的旧版WM。