Error trying to use mod_wsgi and Mercurial
Matt Mackall
mpm at selenic.com
Thu Oct 20 19:46:57 UTC 2011
On Thu, 2011-10-20 at 15:19 -0400, Scott Palmer wrote:
> On 2011-10-20, at 3:09 PM, Tim Downey wrote:
>
> > Hi folks,
> >
> > I've been trying to set up mod_wsgi on my Apache for use with Mercurial and think I'm close, but I'm getting an issue that seems to be about loading a DLL. Has anyone seen this message or can someone offer some advice on what else I can check?
> >
> > The environment is Apache 2.2 (32 bit), Mercurial 1.9.3 (src distribution unzipped and pointed at), Python 2.7 (32 bit) on Win 2008R2.
> >
> > Here's the error. I can't quite tell which DLL is trying to be loaded, but from Googling, it may be kernel32.
> >
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] mod_wsgi (pid=5064): Target WSGI script 'D:/views/Apache2.2/wsgi/hgweb.wsgi' cannot be loaded as Python module.
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] mod_wsgi (pid=5064): Exception occurred processing WSGI script 'D:/views/Apache2.2/wsgi/hgweb.wsgi'.
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] Traceback (most recent call last):
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] File "D:/views/Apache2.2/wsgi/hgweb.wsgi", line 18, in <module>
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] application = hgweb(config)
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] File "D:/views/mercurial-1.9.3\\mercurial\\hgweb\\__init__.py", line 26, in hgweb
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] return hgwebdir_mod.hgwebdir(config, baseui=baseui)
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] File "D:/views/mercurial-1.9.3\\mercurial\\hgweb\\hgwebdir_mod.py", line 62, in __init__
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] self.refresh()
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] File "D:/views/mercurial-1.9.3\\mercurial\\hgweb\\hgwebdir_mod.py", line 71, in refresh
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] u = ui.ui()
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] File "D:/views/mercurial-1.9.3\\mercurial\\ui.py", line 43, in __init__
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] for f in scmutil.rcpath():
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] File "D:/views/mercurial-1.9.3\\mercurial\\demandimport.py", line 75, in __getattribute__
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] self._load()
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] File "D:/views/mercurial-1.9.3\\mercurial\\demandimport.py", line 47, in _load
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] mod = _origimport(head, globals, locals)
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] File "D:/views/mercurial-1.9.3\\mercurial\\scmutil.py", line 164, in <module>
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] class opener(abstractopener):
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] File "D:/views/mercurial-1.9.3\\mercurial\\scmutil.py", line 180, in opener
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] @util.propertycache
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] File "D:/views/mercurial-1.9.3\\mercurial\\demandimport.py", line 75, in __getattribute__
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] self._load()
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] File "D:/views/mercurial-1.9.3\\mercurial\\demandimport.py", line 47, in _load
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] mod = _origimport(head, globals, locals)
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] File "D:/views/mercurial-1.9.3\\mercurial\\util.py", line 507, in <module>
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] from windows import *
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] File "D:/views/mercurial-1.9.3\\mercurial\\demandimport.py", line 85, in _demandimport
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] return _origimport(name, globals, locals, fromlist)
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] File "D:/views/mercurial-1.9.3\\mercurial\\windows.py", line 21, in <module>
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] posixfile.__doc__ = osutil.posixfile.__doc__
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] File "D:/views/mercurial-1.9.3\\mercurial\\demandimport.py", line 75, in __getattribute__
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] self._load()
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] File "D:/views/mercurial-1.9.3\\mercurial\\demandimport.py", line 47, in _load
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] mod = _origimport(head, globals, locals)
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] File "D:/views/mercurial-1.9.3/mercurial/pure\\osutil.py", line 78, in <module>
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] _crt = ctypes.PyDLL(_crtname())
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] File "D:\\views\\Python27\\Lib\\ctypes\\__init__.py", line 353, in __init__
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] self._handle = _dlopen(self._name, mode)
> > [Thu Oct 20 13:14:51 2011] [error] [client 127.0.0.1] WindowsError: [Error 126] The specified module could not be found
> >
>
> It's a known issue. The current workaround is to use Mercurial binaries built with MinGW.
You might find this handy:
http://mercurial.markmail.org/thread/fx5rqzyxo5ut6bic
--
Mathematics is the supreme nostalgia of our time.
More information about the Mercurial
mailing list