2010-04-27 120 views
1

我在一臺機器上安裝了psyco,沒有問題,但是在安裝在另一臺機器上時出現了一個奇怪的錯誤。 我不能夠使用easy_install的,因爲它給了我一個錯誤:Python中安裝Psyco的奇怪錯誤

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並沒有「蟒蛇的setup.py安裝」。我已經多次使用它,沒有任何問題。我收到以下消息:

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'] 

對於爲什麼我得到此錯誤的任何想法? 謝謝

回答

2

看來,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。這是更可取的。

+0

感謝您的意見。我已經安裝了MS visual 2008,因爲我收到了另一個錯誤(找不到.bat文件)。不幸的是,預編譯的版本僅適用於32位而不是64位。我會讀你建議的線索。謝謝 – duduklein 2010-04-27 12:05:01

+2

@ user210481,您是否閱讀過Psyco網站的首頁? 「僅供參考,Psyco根本不適用於任何64位系統。」如果你需要它在64位系統上工作,那麼你運氣不好。 – Cerin 2010-04-27 13:41:06

+0

我錯過了這個...這是一個很好的理由改爲32位... – duduklein 2010-04-27 14:11:30

0

我試圖解決這個問題(當試圖安裝另一個模塊時)。問題是腳本msvc9compiler.py試圖找到和vcvarsall.bat這是在像C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC這樣的文件夾下,這反過來試圖找到並執行腳本C:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\Tools我的案例vcvars32.bat。該腳本正在設置 - 更新某些變量:PATH,LIB和其他2個從未在您的案例中設置/更新的其他變量。

我的解決方法是手動查找* .bat,然後在提示符中運行它,然後運行安裝命令。這些變量正確設置,但只在命令提示符會話期間設置。

嘗試運行echo %LIB%,在運行腳本之前和之後,查看該變量是否確實設置。