什么是mercurial hgweb.cgi和python匹配版本

时间:2011-08-11 20:10:01

标签: python mercurial

Mercurial版本是1.9.1

C:\Inetpub\hgweb>hg version
Mercurial Distributed SCM (version 1.9.1)
(see http://mercurial.selenic.com for more information)

Copyright (C) 2005-2011 Matt Mackall and others
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

我试图运行位于mercurial的文件“hgweb.cgi”

尝试使用python 2.5,2.7和3.2,但我仍然得到幻数错误。

C:\Inetpub\hgweb>c:\Python25\python.exe hgweb.cgi
Traceback (most recent call last):
  File "hgweb.cgi", line 15, in <module>
    from mercurial import demandimport; demandimport.enable()
ImportError: Bad magic number in C:\Inetpub\hgweb\mercurial\__init__.pyc

C:\Inetpub\hgweb>c:\Python27\python.exe hgweb.cgi
Traceback (most recent call last):
  File "hgweb.cgi", line 15, in <module>
    from mercurial import demandimport; demandimport.enable()
ImportError: Bad magic number in C:\Inetpub\hgweb\mercurial\__init__.pyc

C:\Inetpub\hgweb>c:\Python32\python.exe hgweb.cgi
Traceback (most recent call last):
  File "hgweb.cgi", line 15, in <module>
    from mercurial import demandimport; demandimport.enable()
ImportError: Bad magic number in C:\Inetpub\hgweb\mercurial\__init__.pyc

我应该为python使用什么版本?

  

编辑#2

我将位于mercurial附近的Library.zip内容重新复制到hgweb.cgi,例外是“No module named mercurial”。但是有一个名为'mercurial'的文件夹,它包含pyo文件。 (尝试其他python版本2.7,3.2并且错误是相同的)

详细信息:

<type 'exceptions.ImportError'> Python 2.5.4: C:\Python25\python.exe
Thu Aug 11 23:24:26 2011
A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred.

 C:\Inetpub\hgweb\hgweb.cgi in ()
   13 import cgitb; cgitb.enable()
   14 
   15 from mercurial import demandimport; demandimport.enable()
   16 from mercurial.hgweb import hgweb, wsgicgi
   17 application = hgweb(config)
mercurial undefined, demandimport undefined
<type 'exceptions.ImportError'>: No module named mercurial 
      args = ('No module named mercurial',) 
      message = 'No module named mercurial'
  

编辑3

已安装的python 2.6

新错误是:

Traceback (most recent call last):
  File "C:\Inetpub\hgweb\hgweb.cgi ", line 17, in <module>
    application = hgweb(config)
  File "mercurial\hgweb\__init__.pyc", line 26, in hgweb
  File "mercurial\hgweb\hgwebdir_mod.pyc", line 62, in __init__
    ||ƒSt|iƒ}|}xæ|oŞ|i|ƒ}   |   o™||id
  File "mercurial\hgweb\hgwebdir_mod.pyc", line 71, in refresh
    |||ƒS|it|ƒ|dd|ƒSWn<tj
  File "mercurial\ui.pyc", line 43, in __init__
    |iƒ|djotiidƒ}n|id|ƒdS(NtsectionstremapsIgnored: %s
  File "mercurial\demandimport.pyc", line 75, in __getattribute__
  File "mercurial\demandimport.pyc", line 47, in _load
    _demandimportQs:"
  File "mercurial\scmutil.pyc", line 164, in <module>

  File "mercurial\scmutil.pyc", line 180, in opener
    (R÷tctx(smercurial\scmutil.pyctbadfn;s(R-(RRŸRØtbad(RRştoptsRRßR((R÷Rsmercurial\scmutil.pycRŸ3s
  File "mercurial\demandimport.pyc", line 75, in __getattribute__
  File "mercurial\demandimport.pyc", line 47, in _load
    _demandimportQs:"
  File "mercurial\util.pyc", line 503, in <module>
  File "mercurial\demandimport.pyc", line 85, in _demandimport
  File "mercurial\windows.pyc", line 21, in <module>
    cCscy|iiƒSWnKtj
  File "mercurial\demandimport.pyc", line 75, in __getattribute__
  File "mercurial\demandimport.pyc", line 47, in _load
    _demandimportQs:"
  File "mercurial\osutil.pyc", line 12, in <module>
  File "mercurial\osutil.pyc", line 10, in __load
ImportError: DLL load failed: The specified module could not be found.

1 个答案:

答案 0 :(得分:2)

您需要在构建Mercurial的Python版本下运行它。不幸的是,常见问题没有提到这是什么,我无法在我当前的系统上打开.msi,所以你需要检查一个“pythonXX.dll”或与TortoiseHG一起安装的一些这样的库,并将它与那个次要版本一起使用Python。