On Fri, 2007-10-12 at 13:12 -0700, Charlie Poole wrote: > use --runtime=VERSION to select the runtime > > for example, to run under the 2.0 profile, specify > --runtime=v2.0.50727 > > The weird argument format is inherited from .NET, which uses it in the > COMPLUS_VERSION environment variable.
If you don't specify --runtime, you get whichever runtime the program was compiled against -- if you use mcs or CSC from .NET 1.0, you'll implicitly get a 1.0 runtime, and if you use gmcs or CSC from .NET 2.0, you'll implicitly get a 2.0 runtime. Mono's --runtime argument is largely to allow you to override the default specified in the assembly header. .NET also uses the program header to determine which runtime to use -- if you have *both* .NET 1.0 and .NET 2.0 installed, then the assembly header will be read to determine which runtime to use. If you only have one version of .NET installed, then that version will be used to run your app, which *can* result in an exception (e.g. running a 2.0 app under a 1.0 runtime won't work) or in imperfect compatibility (e.g. running a 1.0 app under a 2.0 runtime, as the behavior of some methods changed). - Jon _______________________________________________ Mono-list maillist - [email protected] http://lists.ximian.com/mailman/listinfo/mono-list
