[Mono-list] Running vs2005 beta 2 compiled code on mono...

A Rafael D Teixeira rafael.teixeirabr at terra.com.br
Fri Jul 1 15:13:10 EDT 2005


Hi Alex see inline:

On Thu, 2005-06-30 at 23:29 -0500, Alex Mohr wrote:
> Hi Folks,
> 
> I'm new to CLR/CLI stuff and I'm trying some simple experiments.
> 
> I'm interested in C++/CLI in visual studio 2005 beta 2.  I was hoping to
> be able to compile stuff in Visual Studio using /clr:pure and be able to
> run it on other platforms using mono.  Unfortunately I've been running
> into some trouble.

It is expected to have some trouble currently, see below

> I have the simplest C++/CLI program (main takes no args and just returns
> 0) that I can compile and run in VS2005.  I then try to run the program
> on a mac where I have installed mono, but it fails with an obscure error
> (unfortunately I don't have it in front of me now).

A /clr:pure program uses only managed code, and that is good but it:

1) Expects a very different mscorlib 2.0. So at least you need to run
the mono 2.0-compatible preview version, and I'm not sure all the needed
implementations are in place.
2) It still has some dependency on a specific runtime library
Microsoft.VisualC.dll. That I'm quite sure we doesn't have much of it
implemented as needed for both profiles (1.X, 2.0).

This old post tells a bit more:
http://galactus.ximian.com/pipermail/mono-devel-list/2004-
August/007453.html

The only .NET language that I know doesn't have an specific runtime
library is C# (It only needs the three core .NET libraries).

> Is anybody doing this sort of thing?  If so, are there some obvious
> steps that I'm missing?  Any help is appreciated.


As for Microsoft.VisualC.dll:
-----------------------------------
No one has been actively working on it since 2003 (as told by svn log)

All the meaningful sources we have there are
 
Microsoft.VisualC/DebugInfoInPDBAttribute.cs
Microsoft.VisualC/DecoratedNameAttribute.cs
Microsoft.VisualC/IsCXXReferenceModifier.cs
Microsoft.VisualC/IsConstModifier.cs
Microsoft.VisualC/IsLongModifier.cs
Microsoft.VisualC/IsSignedModifier.cs
Microsoft.VisualC/IsVolatileModifier.cs
Microsoft.VisualC/MiscellaneousBitsAttribute.cs
Microsoft.VisualC/NeedsCopyConstructorModifier.cs
Microsoft.VisualC/NoSignSpecifiedModifier.cs

And that is surely for 1.X profiles

As for needed changes in mscorlib:
-----------------------------------

The class status page tells that currently mscorlib lacks some 1719
pieces in the 2.0 profile, so probably some of them are needed to be
able to run C++ programs.

Telling us your error message may help us implement what is missing or
must be changed for your program to work correctly.

> Thanks,
> 
> Alex

Fun,

-- 
Rafael "Monoman" Teixeira 
Mono Hacker since 16 Jul 2001 - http://www.mono-project.com/
Mono Brasil Founding Member - http://monobrasil.softwarelivre.org/
Simios Proud Member - http://www.simios.org/ 
English Blog: http://monoblog.blogspot.com/
Brazilian Portuguese Blog: http://www.simios.org/blog/monoman



More information about the Mono-list mailing list