Para desarrollar aplicaciones con Mono en Windows utiliza SharpDevelop y Mono, aqui explicare como hacerlo y que problemas resultan asi como tambien la solucion.
Instalacion
1) Instalar el Mono y SharpDevelop:
Instalar .NET Framework 2.0, 22.4 MB: SharpDevelop 2 utiliza .NET 2.0.
Instalar SharpDevelop 2, 8.63 MB: Al instalar SharpDevelop no se instala automaticamente Mono,
la instalacion de Mono sigue siendo obligatoria.
Instalar Mono, 48.9 MB: El link lleva a la pagina de todas las descargas de mono, deben elejir en la seccion "Windows Installer Windows 2000 and above" y el instalador para la version
Stable, para el momento que se escribio este blog era la version
Mono 1.2.3.1_0 Setup (Stable). El instalador de mono les preguntara el puerto donde se instalar XSP, el hecho de que tenga un puerto predeterminado no quiere decir que se iniciara automaticamente, el uso de XSP en Windows es Manual.
Problemas
Al crear un proyecto de GTK# o libreria mono se encontraran con un problema, el error es el siguiente de acuerdo al tipo de proyecto que crearon:
Proyectos en Mono 1.1:
"Mcs.exe" exited with code -1.
Proyectos en Mono 1.2:
"Gmcs.exe" exited with code -1.
La solucion es agregar una variable de entorno a Windows llamada "MONO_EXTERNAL_ENCODINGS" y con el valor "default_locale" (sin comillas). Para establecer la variable de entorno no utilice el comando SET, en vez de eso, realice la operacion usando la interfaz grafica haciendo click derecho en el icono de Mi PC->Propiedades.
Nota: Las variables establecidas con SET por linea de comando no se establecen de forma global para Windows, si necesita hacerlo global y no quiere utilizar la interfaz grafica entonces debe agregar las instrucciones SET en el archivo Autoexec.bat y reiniciar Windows.
Ejemplo:
Lo siguiente es anexar a la variable PATH la ruta de instalacion de los binarios de Mono Runtime. Recuerden colocarle un punto-y-coma(;) al final del valor actual de la variable si antes no lo tenia y anexen la ruta a la carpeta "bin" de la instalacion de mono, para mi caso es "C:\Archivos de programa\Mono-1.2.3.1\bin".
Ejemplo:
Le damos click al boton Aceptar para establecer los nuevos valores.
Reinicien SharpDevelop e intenten compilar el proyecto y veran como todo funciona:)