用pf_ring链接到pcap

时间:2011-06-02 16:55:55

标签: static-libraries dynamic-linking libpcap ldd

我正在尝试使用用pf_ring编译的libpcap。 我从ntop获得了源代码并编译了它。

然而,有一些我不明白的事情(抱歉新手链接问题): 我想知道我的应用程序是否使用了正确的pcap版本(带有pfring的版本), 所以我输入了ldd,根本没有看到pcap,只是pfring。

我查看了输出,只看到pfring.so而不是pcap,虽然我动态链接到两个库。

我查看了libpcap的Makefile,看到它与pfring.a静态链接。 我认为我根本不需要与pfring链接,因为它是pcap的一部分,但是未定义引用。

有没有人知道我为什么会得到未定义的引用错误,为什么我在动态链接时不会在ldd输出中看到libpcap?

谢谢, 罗恩

1 个答案:

答案 0 :(得分:0)

首先确保您执行了以下所有步骤:

//Installation
sudo su
cd kernel; make install
cd ../userland/lib; make install
insmod ./kernel/pf_ring.ko

然后从系统中删除当前的libpcap及其所有依赖项。

如你所知,pfring启用的libpcap位于/ userland / libpcapx下。

如果您在应用程序中使用pf_ring启用了libpcap,只需将libpcap.a链接到您的程序。