在example.py文件中我有:
import libnet
但是当我通过:
/opt/local/bin/python2.5 example.py
我得到" importterror: No module named libnet"
如何安装它:
- 到http://pylibnet.sourceforge.net/下载
- 读取README文件,上面写着:在Mac上编译不工作,用Macports加载它并使用python 2.5 python 2.5
- 安装libnet: sudo port install libnet11
- 一切似乎都很好
只是错误保持,它似乎没有安装。我现在该怎么办?
谢谢你的帮助!
/编辑:
使用:"sudo/opt/local/bin/python2.5 setup.py install",我得到:
Searching for libnet...
running install
running build
running build_ext
building 'libnet' extension
/Developer/usr/bin/llvm-gcc-4.2 -fno-strict-aliasing -mno-fused-madd -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -DLIBNET_MAJOR_VERSION=1 -DLIBNET_MINOR_VERSION=1 -DLIBNET_RELEASE=5 -DMAJOR_VERSION=2 -DMINOR_VERSION=0 -I/opt/local/include -I/opt/local/Library/Frameworks/Python.framework/Versions/2.5/include/python2.5 -c src/libnetmodule.c -o build/temp.macosx-10.7-x86_64-2.5/src/libnetmodule.o
In file included from src/context.c:110,
from src/libnetmodule.c:37:
src/builders.c: In function 'context_build_icmpv4_timestamp':
src/builders.c:726: error: 'n_time' undeclared (first use in this function)
src/builders.c:726: error: (Each undeclared identifier is reported only once
src/builders.c:726: error: for each function it appears in.)
src/builders.c:726: error: expected ';' before 'otime'
src/builders.c:727: error: expected ';' before 'rtime'
src/builders.c:728: error: expected ';' before 'ttime'
src/builders.c:735: error: 'otime' undeclared (first use in this function)
src/builders.c:735: error: 'rtime' undeclared (first use in this function)
src/builders.c:735: error: 'ttime' undeclared (first use in this function)
error: command '/Developer/usr/bin/llvm-gcc-4.2' failed with exit status 1
在用MacPorts安装了C库之后,是否安装了下载的python libnet
包装器?如果没有,将cd
放到去焦油化的pylibnet
目录,并尝试:
sudo /opt/local/bin/python2.5 setup.py install
Update:从您更新的问题来看,现在看来您在/sw
中安装了另一个版本的libnet C库,这是Fink
安装的包的默认位置。您不应该尝试混合使用包管理器。选择一个——MacPorts、Fink或Homebrew是OS X上最流行的——并坚持使用它。作为短期修复,您可能可以编辑setup.py
文件以删除对/sw
的搜索。您应该在某个时候评估您已经安装了哪些与Fink和MacPorts一起的软件包,选择一个,在其中安装任何丢失的端口/软件包,并完全删除其他软件包系统。