November 23, 2006

Happy Experimental Thanksgiving Day

A Mono Experimental Installer for Windows was uploaded yesterday to its home at Novell Forge. First of all, let me refresh my readership's memory. The Experimental Installer is meant to showcase -- as much as possible -- the state of the art of GTK+/GNOME and Mono/Gtk# technologies running on Microsoft Windows Operating System.

Its other major design goal is to serve as a base for all new migration/port work of technologies that exists on *NIX but have not yet debuted on Win32. It does this by including all of .a, .la, .lib, and .def files along with a rich set of .pc files that will go a long way to satisfy the dependencies and prerequisites of projects being ported.

Last but not least, the Experimental Installer is in turn used to build the Gtk# and Gnome# libraries that are later packaged in the two Gtk# Installers for .NET Framework. As you can tell by the previous release dates, it has almost been a year since I last released the Gtk# Installers for .NET.

The Windows Mono Development community owes a great deal of gratitude to both Lluis Sanchez Gual and to Levi Bard (tak). Lluis has been doing incredible work on MonoDevelop and has further its progress in ways that make this Windows programmer anxious to have it working on Windows. That is where Levi Bard comes in. Sometime around the September time frame, Levi submitted a patch to facilitate the running of MonoDevelop on Windows. The patch has been folded into MonoDevelop 0.12. At one point, Levi showed some screen shots of MD running on Windows! Levi had mentioned that he use the previous Mono Experimental Installer to help him achieve this milestone.

However, I have not been able to fully get MonoDevelop running on Windows just yet. There is no doubt that it is closer than ever and that the only thing needed is a few more pushes to making it happen. This is the reason why I have included a non-functional MonoDevelop copy as one of the installable components on this release of the Experimental Installer. Perhaps some one can tweak what is already there and/or continue with a new tarball of MD hacking it into submission.

In order to present a little bit of a more comprehensive picture of what all is on the Experimental Installer and how it differs from the installers available in the, I will try to detail below:

  • Mono 1.2.1
  • GTK+ 2.8.20 and GNOME 2.14.3
  • GtkSourceView and GtkSourceview#
  • Gtk# 1.0.10 and Gtk# 2.8.3
  • MonoDoc Web Interface.
  • MonoDoc browser.exe that can now truly work with either GtkHtmlRender.dll or GeckoHtmlRender.dll
  • NAnt 0.85 has been included and I have created some shell wrapper scripts for it as well as a matching batch file (nant and nant.bat respectively).
  • A lot of the Gtk# 2.x samples already compiled and ready to run, including a Mono-Cairo one that will answer the questions I get so often about Cairo running on Win32.
  • MonoLaunch has now been included in the Experimental Installer to really make it easy to test samples in the samples directory by dragging the exe files onto the desktop drop targets.
Posted by martinf at November 23, 2006 08:16 AM

Thanks for the update. I'll be installing mono along with evolution in an attempt to get MD running per Levi's instructions at:

My understanding from your post is that MD is not fully operational after doing this. Is this correct?

-Leon S

Posted by: Leon at November 24, 2006 06:29 AM

Uhm, since MD is loosely based on SharpDevelop, why not work closer with the SD development crew to make it integrate better with Mono instead of getting MD to run half-way on Windows and SD to work half-way with Mono? Wouldn't both IDE's benefit from a shared codebase in this area?

Posted by: Asbjørn Ulsberg at November 24, 2006 08:54 AM

Hi Paco,

First of all, Happy Thanksgiving! Very nice present you brought for all of us.

I just installed last night so haven't tested all that comes bundled, except of course MD :D

Hope this kind of packages helps to promote Mono to Windows developers.


Martín Trejo

Posted by: ChilliCoder at November 24, 2006 10:15 AM

Paco, this is wonderful work. Have you opened a bug for the MD issue in Windows? I would like to track it and have a look if I figure out what could be happenning.

As for the SD suggestion, I totally agree Asbjorn, but perhaps this should be discussed in the SD forums and/or MD lists. BTW, this could be very difficult to achieve because now the codebases differ very much, and it's difficult to integrate things from a WinForms app to a GTK# one, and viceversa; besides it would be difficult to convince the SD guys to use GTK# (which in my opinion is much better), and it would be difficult to mantain MonoDevelop as the "Gnome" IDE and at the same time fully Windows-compatible.

This is the disadvantage of free software. There are so many alternatives that there is few cooperation :(

Posted by: knocte at November 24, 2006 12:36 PM

Thank you very much for your effort. Now it seems to be possible build a cross-platform app using MonoDevelop add-in engine.

Posted by: Michal Harakal at December 4, 2006 06:48 AM