[Mono-list] Does mono support VC++

Jonathan Pryor jonpryor at vt.edu
Wed Oct 21 13:14:18 EDT 2009


On Tue, 2009-10-20 at 21:16 -0700, Bharti Mishra wrote:
> I am migrating vb.net application onto linux(open suse) platform using mono
> 2.4.3. I have one dll for printing which is based on 'VC++' code. 
> when have tested this dll through MoMA, it shows "this is not a proper dll".
> let me know "does mono support VC++ code"

As others have mentioned, Mono runs pure IL assemblies.  Depending on
how you compiled things, Managed Extensions for C++ (VS.NET) or C++/CLI
(VS2005+), when you compile with /clr you will get "mixed-mode
assemblies," which aren't compatible with Mono.  You need pure IL
assemblies.

See also:

	http://www.mono-project.com/FAQ:_Technical#Compatibility
	http://www.mono-project.com/CPlusPlus

The short version is that using /clr:pure or /clr:safe will generate
pure IL assemblies that Mono can run.  However, depending on what you're
doing this may not actually work (e.g. if you want to inherit from a
native C++ type, etc., etc.).

 - Jon




More information about the Mono-list mailing list