lunes, mayo 15, 2006

Usando NAnt con Mono bajo Windows

Creo que más de uno han batallado para hacer funcionar NAnt con el ambiente de ejecución de Mono.

La solución que propongo es la siguiente:

  • En el archivo NAnt.exe.config, buscanos la sección en la cual se define el ambiente para "mono-1.0"

  • Casi al final, lindando con la definición de "mono-2.0", encontramos las siguientes definiciones:
    <!-- determine if we're NOT dealing with a Mono 1.0.x release -->
    <if test="${version::get-major(version::parse(defaultCLR)) != 1 or version::get-minor(version::parse(defaultCLR)) != 0}">
    <!-- in Mono 1.1.x (and higher ?), the framework tools are located in the <installroot>\lib\mono\<profile> directory -->

  • Las líneas importantes son estas:
    <!-- property name="runtimeEngine" value="${path::combine(frameworkAssemblyDirectory, 'mono.exe')}" / -->
    <property name="runtimeEngine" value="${path::combine(sdkInstallRoot, 'bin/mono.exe')}" />


Como se puede ver, en lugar de usar el valor de frameworkAssemblyDirectory, se sustituye por sdkInstallRoot y de agrega el sufijo 'bin/' a la ruta para llegar a mono.exe
Esto me funcionó para Mono 1.1.13.6 y 1.1.15 con NAnt 0.85.1932.0; rc3; bajo Windows XP-ESN

3 comentarios:

Anónimo dijo...

I really enjoyed looking at your site, I found it very helpful indeed, keep up the good work.
»

Anónimo dijo...

Very pretty site! Keep working. thnx!
»

Anónimo dijo...

Interesting site. Useful information. Bookmarked.
»