[Python.NET] Replaced Python.exe file causes problems for extension modules
Dave Hirschfeld
dave.hirschfeld at gmail.com
Mon Jul 11 12:34:31 CEST 2011
Øystein Skotheim <oystein+pythondotnet at ...> writes:
>
> Hello. I have managed to compile the SVN version of PythonDotNet against
> the 4.0 version of the .NET library with Visual Studio 2010 on Windows
> 7. I copied over clr.pyd, Python.Runtime.dll as well as new versions of
> python.exe and pythonw.exe into my C:\Python26 directory. I am now able
> to import .NET 4.0 modules after writing "import clr"
>
> However, I have run into a few problems because I had to replace my
> Python executable. I am using a lot of packages from the PythonXY that
> depend on c extension modules (.pyd-files). Whenever I try to import
> such a module, I get the following error:
>
> Runtime Error!
>
> Program: C:\Python26\Python.exe
>
> <snip>
>
> The other solution would be to keep my original "Python.exe" file, but
> if I do that I get the following error message when I try to import the
> CLR module:
>
> In [1]: import clr
> ------------------------------------------------------------
> Traceback (most recent call last):
> File "<ipython console>", line 1, in <module>
> SystemError: dynamic module not initialized properly
>
> Is there any way around this?
>
> Cheers,
>
> ---
> Øystein Skotheim
> Research Scientist, Optical Measurement Systems and Data Analysis
> SINTEF ICT, Trondheim, Norway
Sounds like you may have forgotten to edit your buildclrmodule.bat file to
reference the .NET4 version of ilasm - see:
http://permalink.gmane.org/gmane.comp.python.dotnet/970
I don't know that copying over the newly compiled python.exe will work (possibly
for the reasons you state) however simply copying over the clr.pyd and
Python.Runtime.dll to your C:\Python26 directory should work if you make the
changes to the buildclrmodule.bat file.
HTH,
Dave
More information about the PythonDotNet
mailing list