在setup.py中解决头文件依赖问题
我在Windows上安装一个Python模块时遇到了困难。这个模块需要用到libpcap和winpcap这两个库。
当我尝试运行'setup.py'时,出现了致命错误,脚本就中止了,下面是一个错误示例:
Cannot open include file: 'pcap.h': No such file or directory
我下载了源文件,并把它们放进了我的PATH环境变量里,但似乎没有解决问题。我可以一步步找到并把文件移动到预期的目录结构中,比如上面提到的'pcap.h'。不过,如果脚本能直接引用正确的库,那就简单多了,我就不需要为我的电脑做这些繁琐的调整了。
我想我需要修改'setup.py'中下面这部分代码:
bpf = Extension(name='bpf',
sources=[ 'pcs/bpf/bpf.pyx' ],
include_dirs=['/usr/include/pcap'],
library_dirs=['/usr/lib'],
libraries=['pcap']
)
我尝试过用cygwin和minigw来运行安装。
1 个回答
1
你有没有试过查看这个构建说明呢?
winpcap development is free. http://www.winpcap.org/install/bin/WpdPack_4_0_2.zip
1) Download MinGW32. Install to c:\wingw32
2) path=%path%;c:\wingw32\bin
3) Download winpcap development pack from above. Unzip to c:\WpdPack
4) From pypcap-1.1 directory.
> python .\setup.py --with-pcap="C:\WpdPack"
> python .\setup.py build -cmingw32
> python .\setup.py install