[Mono-dev] Mixed Mode Assemblies

Rodrigo Kumpera kumpera at gmail.com
Thu Jul 7 17:32:26 EDT 2011


On Thu, Jul 7, 2011 at 5:34 PM, Jonathan Pryor <jonpryor at vt.edu> wrote:

> On Jul 7, 2011, at 11:55 AM, arkain wrote:
> > I understand the reasons why the developers chose to leave out support
> for
> > developing mixed-mode assemblies using mono: the lack of cross-platform
> > compatibility in such assemblies. However, I would argue that such things
> > are not a consideration for those who would choose to develop such
> > assemblies.
>
> Mono supports mixed mode assemblies on Windows:
>
>        http://www.mono-project.com/CPlusPlus
>
>        "Mixed-mode assemblies are experimentally supported only on
> Windows..."
>
> Mono can't support mixed-mode assemblies on any other platform, for a
> simple reason: in order for a mixed-mode assembly to be really useful, it
> needs to be loadable as a native library on the platform. This works on
> Windows because assemblies are PE/COFF files, and Windows dynamic link
> libraries are PE/COFF, so everything Just Works.
>
> But try using dlopen(3) on Linux to load an assembly, and dlopen(3) will
> (rightfully) fail -- Linux wants ELF, not PE. There's a rather fundamental
> file format difference here.
>
>
Well, the fix here is quite straight forward - just implement a PE/COFF
loader for non windows platforms. Now on how hard is to do it I'll leave the
answer to the ones entertaining the idea of doing it.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.ximian.com/pipermail/mono-devel-list/attachments/20110707/ad0c7eec/attachment.html 


More information about the Mono-devel-list mailing list