[MonoDevelop] Why does MonoDevelop require .Net 4 on Windows?

Mike Krüger mkrueger at novell.com
Mon May 2 11:07:08 EDT 2011

> Our client supports many many flavors of Windows from Windows 2000, XP,
> 2003, Vista, Windows 7, 2008, 2008 R2, Embedded, Core, etc. All of that is
> written in Microsoft C/C++ so that our mostly common code base their.  Then
> we have clients that support all enterprise flavors of Linux, and a few free
> distros, as well as AIX, Solaris, and HPUX, and Mac OS X.  All of these are
> written in Java and Shell Scripts.
> Then there is our server, this is written in .Net 3.5 C# against SQL Server.
> What we would love to be able to do is get to a single code base for the
> clients using C# with just a little C for kernel drivers portions. This
> would also allow about 40% common code sharing between server and client.
> Our server on windows can always run in Microsoft .Net no issues, and we
> want to be able to allow our customers to use Linux to run the non DB
> portion of our server as well under mono.
> However we have tight restrictions in many of our client environments on the
> size of our client that will be distributed and many of the clients also
> have IT policies that prevent adding .Net to Windows if it doesn't come with
> it. So that limits .Net to 3.5 on Vista and higher.  So that is why we
> couldn't use .Net on windows.
I understand that requirement, but what has this to do with monodevelop. 
If you've .NET + mono installed the project you use could target mono & 
monodevelop takes the mono installed to compile/run this project. The 
.NET4 requiremenet would only affect the developer machines. They 
should've .NET4 + mono installed and monodevelop set up using the mono 

> Now comes along Mono 2.10 and eventually 3.0, that has many of the features
> we need to make it useable, and performance close enough to .Net that makes
> it worth it to have C# and common code. Plus  we can bundle/embed into our
> client for distribution a slimmed down version of Mono that keeps us within
> the size restrictions and the IT Policy of "Installing" additional items
> like .Net.  While there are ways to bundle .Net we cannot modify it in any
> way to reduce its size, and the new Client profile doesn't have all the
> features we need.
> I understand that Mono group in Novell is set apart for the enterprise
> groups that deal with SLED/SLES, Zen, etc. We are patterns with other groups
> with in Novell and they have many of the same issues and concerns we have
> with our customers with theirs. So what I am bring up and trying to help
> bring to light with the Mono group are serious Enterprise Class issues that
> mid-size to large size development shops have to deal with.
> These are things that the Mono group needs to have people in it to help
> consider Enterprise issues, and to talk with the groups in Novell (and
> Attachmate) to find out what their customers want and why.

I don't understand why you need to bundle .NET for your project when 
only monodevelop requries .NET. See .NET like gtk# for windows - it's 
something monodevelop requires - nothing more.
But you don't need to ship gtk# for windows for projects built with 

Monodevelop has an option panel where you can select the runtime 
monodevelop usese to compile & run the projects - have you seen that ?


More information about the Monodevelop-list mailing list