[Python.NET] path question: clr.so being picky about paths
Hamilton Link
helink at sandia.gov
Wed Dec 3 19:12:15 CET 2008
Sure enough, under ubuntu (though I'm about to switch to fedora) I only
need clr.so and Python.Runtime.dll. So, obviously I have some more
digging to do on how this all works. But how is clr.so broken
precisely? It appears to work...
h
Christian Heimes wrote:
> Link, Hamilton wrote:
>
>> - clr.so bootstraps mono (under Windows the OS knows how to dlload a .net assembly already) to enable .net assembly extensions and I assumed perhaps recklessly that it laterals to clr.pyd
>>
>
> The code in src/monoclr is compiled to a shared library (.so on most
> Unices and .dyload on Mac OS X) and a standalone Python executable. The
> library is a Python extension which initializes Mono, loads the
> Python.Runtime assembly and initializes the rest of PythonDotNET.
> Finally the clr module is replaced by the clr module from PythonDotNET.
>
> However the code is currently broken. svn blame points to r98 jfrayne. :)
>
>
>> - clr.pyd loads Python.Runtime.dll
>>
>
> clr.pyd is a Windows and .NET only Python extension that loads the runtime.
>
> The clr.so/pyd/dyload module is only required when you want to embed
> .NET code into CPython. For the other way around it's not required.
>
>
>> - Python.Runtime.dll, regardless of platform, turns around and uses P/Invoke to connect into the libpython2.5.so/dll, and then you're all set
>>
>
> Yeah. The Python.Runtime assembly also provides the clr module you can
> see inside Python and the import hook to import namespaces from .NET
> assemblies.
>
> Christian
>
> _________________________________________________
> Python.NET mailing list - PythonDotNet at python.org
> http://mail.python.org/mailman/listinfo/pythondotnet
>
>
>
More information about the PythonDotNet
mailing list