【问题标题】:CPAN installing Net::Pcap and Packet module failed due to lpcap由于 lpcap,CPAN 安装 Net::Pcap 和 Packet 模块失败
【发布时间】:2011-11-21 08:13:54
【问题描述】:

最近,我尝试通过 cpan 安装 perl 模块 Net::Packet 和 Net::Pcap,但它抱怨找不到 pcap 库。所以我在搜索 cpan 在安装模块时是否会接受外部 lib/include 目录,但直到现在还没有运气。

looking for -lpcap... no
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
You appear to lack the pcap(3) library. 

If it is installed in a non-standard locatio n, please try setting the LIBS 
and INC values on the command line.

Or get the sources and install the pcap library from http://www.tcpdump.org/

If you install the pcap library using a system package, make sure to also 
install the corresponding -devel package, which contains the C headers needed 
to compile this module. 
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

我的 pcap 库位于 /opt/local/lib,头文件位于 /opt/local/include/pcap。 有谁知道如何解决这个问题?谢谢

【问题讨论】:

  • 您是否尝试在命令行上设置 LIBS 和 INC 值?
  • 是不是类似于“cpan module LIBS=path INC=path”?

标签: perl cpan pcap


【解决方案1】:

Net::Pcap 的 README 文件显示了如何告诉 Makefile.PL 在哪里可以找到 pcap 库:

perl Makefile.PL INC=-I/opt/local/include/pcap LIBS='-L/opt/local/lib -lpcap'

(我已将您的路径插入到示例中。)

但是,让cpan shell 将这些参数传递给 Makefile.PL 相当复杂。您必须使用Distroprefs 系统并创建一个 YAML 文件来提供参数。如果您还不熟悉 Distroprefs,手动安装 Net::Pcap 可能会更容易。

【讨论】:

    【解决方案2】:

    这解决了我的问题:

    yum -y install perl-Net-Pcap libpcap-devel
    

    【讨论】:

      【解决方案3】:

      在 Ubuntu 上,只需安装 libnet-pcap-perl。

      【讨论】:

        猜你喜欢
        • 2018-06-19
        • 2013-11-04
        • 1970-01-01
        • 2012-05-04
        • 1970-01-01
        • 2015-09-16
        • 1970-01-01
        • 1970-01-01
        • 2021-03-08
        相关资源
        最近更新 更多