apt 安装后在 /usr/lib 或 /lib 中找不到 Libpcap

use*_*337 2 java libraries libpcap

我安装了jnetpcap,但显示libpcap.so未找到错误,所以我使用

sudo apt-get install libpcap-dev
Run Code Online (Sandbox Code Playgroud)

但当我grep libpcap进去/lib/usr/lib它不在那里,我是否错过了什么?

Ben*_*oit 5

如果需要库文件,则不必安装开发包。libpcap-dev是包含使用 . 提供的功能开发和编译自己的程序所需的文件的包libpcap

-dev动态库(.so 文件)位于名称中没有的包中。

在我的系统 Ubuntu 13.10 上,它位于libpcap0.8软件包中。所以我做了

$ sudo apt-get install libpcap0.8
Run Code Online (Sandbox Code Playgroud)

然后查看 .so 文件是否已正确安装并可供系统使用:

$ sudo ldconfig -p|grep libpcap
    libpcap.so.0.8 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libpcap.so.0.8
Run Code Online (Sandbox Code Playgroud)

请注意,ldconfig -p在其输出中使用和搜索库​​对我来说看起来更可靠,因为 .so 文件并不总是安装在/lib/usr/lib如您所见。当然,显示包提供的文件列表可以显示 .so 文件安装在哪个目录中:

$ dpkg -L libpcap0.8
Run Code Online (Sandbox Code Playgroud)

最后一句话,如果 的输出ldconfig -p未在其输出中显示该库,您可以通过键入以下命令重新生成共享库列表:

$ sudo ldconfig
Run Code Online (Sandbox Code Playgroud)