在 Python 中安装 Psyco 时出现奇怪的错误
Posted
技术标签:
【中文标题】在 Python 中安装 Psyco 时出现奇怪的错误【英文标题】:Strange error installing Psyco in Python 【发布时间】:2010-04-27 11:25:18 【问题描述】:我在一台机器上安装了 psyco 没有问题,但是在另一台机器上安装时我遇到了一个奇怪的错误。 我无法使用 easy_install,因为它给了我一个错误:
C:\Python26\Downloads\psyco-1.6>easy_install psyco
Searching for psyco
Reading http://pypi.python.org/simple/psyco/
Reading http://psyco.sourceforge.net/
Best match: psyco snapshot
Downloading http://wyvern.cs.uni-duesseldorf.de/psyco/psyco-snapshot.tar.gz
error: Can't download http://wyvern.cs.uni-duesseldorf.de/psyco/psyco-snapshot.t
ar.gz: 404 Not Found
所以,我下载了最新版本 1.6 并执行了“python setup.py install”。我已经用过好几次了,没有问题。我收到以下消息:
C:\Python26\Downloads\psyco-1.6>python setup.py install
PROCESSOR = 'i386'
running install
running build
running build_py
running build_ext
building 'psyco._psyco' extension
Traceback (most recent call last):
File "setup.py", line 180, in <module>
**kwds )
File "C:\python26\lib\distutils\core.py", line 152, in setup
dist.run_commands()
File "C:\python26\lib\distutils\dist.py", line 975, in run_commands
self.run_command(cmd)
File "C:\python26\lib\distutils\dist.py", line 995, in run_command
cmd_obj.run()
File "C:\python26\lib\distutils\command\install.py", line 577, in run
self.run_command('build')
File "C:\python26\lib\distutils\cmd.py", line 333, in run_command
self.distribution.run_command(command)
File "C:\python26\lib\distutils\dist.py", line 995, in run_command
cmd_obj.run()
File "C:\python26\lib\distutils\command\build.py", line 134, in run
self.run_command(cmd_name)
File "C:\python26\lib\distutils\cmd.py", line 333, in run_command
self.distribution.run_command(command)
File "C:\python26\lib\distutils\dist.py", line 995, in run_command
cmd_obj.run()
File "C:\python26\lib\distutils\command\build_ext.py", line 340, in run
self.build_extensions()
File "C:\python26\lib\distutils\command\build_ext.py", line 449, in build_exte
nsions
self.build_extension(ext)
File "C:\python26\lib\distutils\command\build_ext.py", line 499, in build_exte
nsion
depends=ext.depends)
File "C:\python26\lib\distutils\msvc9compiler.py", line 449, in compile
self.initialize()
File "C:\python26\lib\distutils\msvc9compiler.py", line 359, in initialize
vc_env = query_vcvarsall(VERSION, plat_spec)
File "C:\python26\lib\distutils\msvc9compiler.py", line 275, in query_vcvarsal
l
raise ValueError(str(list(result.keys())))
ValueError: [u'path']
关于我为什么会收到此错误的任何想法? 谢谢
【问题讨论】:
【参考方案1】:似乎 psyco 有需要构建的扩展模块。您收到的错误消息不是我所期望的,但它似乎表明它没有找到 Microsoft Visual C++ 编译器,这是为 Python 2.6 构建扩展模块所必需的(至少比其他编译器推荐)。
如果你真的想从源代码构建,我建议你下载 Microsoft Visual C++ 2008 Express Edition 或 Microsoft Visual Studio 2008 试用版。
您最好阅读this thread,并从社区中已经编译过的人那里下载预编译的二进制文件。
编辑:我刚刚注意到Psyco home page 上有一个指向 Python 2.6 pre-compiled binaries by Michael Foord 的链接。这些会更好。
【讨论】:
感谢您的 cmets。我已经安装了 MS Visual 2008,因为我遇到了另一个错误(没有找到 .bat 文件)。不幸的是,预编译版本仅适用于 32 位,而不是 64 位。我会阅读你建议的主题。谢谢 @user210481, 你读过 Psyco 网站的首页吗? “仅供参考,Psyco 根本不适用于任何 64 位系统。”如果你需要它在 64 位系统上工作,那你就倒霉了。【参考方案2】:我也在尝试解决这个问题(同时尝试安装另一个模块)。问题是脚本 msvc9compiler.py 正在尝试查找,而 vcvarsall.bat 位于 C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC
之类的文件夹下,而在我的情况下,vcvars32.bat
又试图在 C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\Tools
下查找并执行脚本。此脚本正在设置更新某些变量:PATH、LIB 和其他 2 个在您的情况下从未设置/更新的变量。
我的解决方法是手动找到 *.bat 并在提示符中运行它,然后我将运行安装命令。变量以这种方式正确设置,但仅在命令提示符的会话期间。
尝试在运行脚本之前和之后运行echo %LIB%
,看看变量确实设置好了。
【讨论】:
以上是关于在 Python 中安装 Psyco 时出现奇怪的错误的主要内容,如果未能解决你的问题,请参考以下文章
在 PyCharm (macOS) 中安装 dlib 时出现问题
使用 GCC 4 在 Mac OS X 中安装 gammu 时出现 LONG_BIT 错误
下面给出了在 python 3.6.6 中安装 dlib 时出现的错误。我在 Windows 10 的 dlib 19.15 文件夹中使用命令“python setup.py install”。