Каковы версии соответствия mercurial hgweb.cgi и python - PullRequest
3 голосов
/ 12 августа 2011

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.

и я пытаюсь запустить файл "hgweb.cgi", расположенный на Mercurial

пробовал с 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

Я заново копирую содержимое Library.zip, расположенное в mercurial рядом с hgweb.cgi, и исключение: «Нет модуля с именем mercurial». но есть папка с именем 'Mercurial', и она содержит пио-файлы. (Пробовал другой питон версии 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 Ответ

2 голосов
/ 12 августа 2011

Вам нужно будет запустить его под версией Python, на которой построен Mercurial. К сожалению, в FAQ не упоминается, что это такое, и я не могу открыть .msi в моей текущей системе, поэтому вам нужно будет проверить наличие «pythonXX.dll» или какой-либо такой библиотеки, установленной с TortoiseHG, и использовать ее с этой минорной версией. Python.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...