我最近在我的Windows 8台式机上安装了cygwin,用于在我的家庭网络中进行网络分析/性能评估
安装后,我使用easy_install失败了:
$ python ez_setup.py
Traceback (most recent call last):
File "ez_setup.py", line 67, in <module>
except ImportError: from md5 import md5
File "/usr/lib/python2.7/md5.py", line 10, in <module>
from hashlib import md5
File "/usr/lib/python2.7/hashlib.py", line 141, in <module>
import logging
File "/usr/lib/python2.7/logging/__init__.py", line 26, in <module>
import sys, os, time, cStringIO, traceback, warnings, weakref, collections
ImportError: No module named time
我的分析到目前为止显示cygwin python 2.7无法找到time.dll:
python -vvv
>>> import time
# trying time.dll
# trying timemodule.dll
# trying time.py
# trying time.pyc
# trying /usr/lib/python2.7/time.dll
# trying /usr/lib/python2.7/timemodule.dll
# trying /usr/lib/python2.7/time.py
# trying /usr/lib/python2.7/time.pyc
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named time
但安装了time.dll(但未在搜索的目录中):
$ find /usr/lib/python2.7/ -name "time*"
/usr/lib/python2.7/lib-dynload/time.dll
$ ldd /usr/lib/python2.7/lib-dynload/time.dll
ntdll.dll => /cygdrive/c/WINDOWS/SYSTEM32/ntdll.dll (0x7fff41430000)
KERNEL32.DLL => /cygdrive/c/WINDOWS/system32/KERNEL32.DLL (0x7fff408c0000)
KERNELBASE.dll => /cygdrive/c/WINDOWS/system32/KERNELBASE.dll (0x7fff3e970000)
fshook64.dll => /cygdrive/c/program files (x86)/f-secure/apps/computersecurity/hips/fshook64.dll (0x56640000)
PSAPI.DLL => /cygdrive/c/WINDOWS/system32/PSAPI.DLL (0x7fff40d40000)
ADVAPI32.dll => /cygdrive/c/WINDOWS/system32/ADVAPI32.dll (0x7fff405f0000)
msvcrt.dll => /cygdrive/c/WINDOWS/system32/msvcrt.dll (0x7fff3ef00000)
sechost.dll => /cygdrive/c/WINDOWS/SYSTEM32/sechost.dll (0x7fff40ea0000)
RPCRT4.dll => /cygdrive/c/WINDOWS/system32/RPCRT4.dll (0x7fff40a00000)
libpython2.7.dll => /usr/bin/libpython2.7.dll (0x53bb50000)
cygwin1.dll => /usr/bin/cygwin1.dll (0x180040000)
希望它与F-Secure无关(我最近在VirtualBox遇到了严重问题)。另外,我必须按如下方式设置环境变量PATH,PYTHONHOME和PYTHONPATH:
export PYTHONHOME=/usr/bin
export PYTHONPATH=/usr/lib/python2.7
export PATH=/usr/local/bin:/usr/bin
export PATH=$PATH:/cygdrive/c/WINDOWS/system32
但没有帮助。将“/usr/lib/python2.7/lib-dynload/”添加到PATH也无济于事。
答案 0 :(得分:2)
最后我找到了问题的原因:
PYTHONHOME设置为/ usr / bin 在修复并更改为/ usr之后 它现在有效。