Ejecutando binario .NET con mono

4

Cuando tengo abc.exe generado desde C # / Mono source, uso 'mono abc.exe'.

¿Hay una manera de ejecutar abc.exe con 'abc.exe' no 'mono abc.exe'? Quiero decir, cuando ejecuto 'abc.exe', ¿puedo hacer que 'mono abc.exe' se llame automáticamente?

    
pregunta prosseek 15.12.2010 - 18:32

3 respuestas

6

Consulte este enlace

Básicamente, lo que tienes que hacer es usar una de las herramientas Mono (mkbundle es genérica, mientras que Macpack está diseñado para funcionar en Mac OS X) para vincular todos los archivos ejecutables de tus aplicaciones y dll en un solo archivo ejecutable que Puede ejecutarse posteriormente como una sola aplicación.

Desde el macpack doc:

macpack es una herramienta que se debe usar para agrupar aplicaciones Cocoa # en paquetes de doble clic y que son fáciles de encontrar en Mac OS X. Combina recursos y bibliotecas estáticas, y genera un info.plist básico en el paquete .app.

Por ejemplo, los siguientes comandos se usan para construir CurrencyConverter.exe en un paquete de aplicaciones:

$ mcs -g -debug+ CurrencyConverter.cs -out:CurrencyConverter.exe -pkg:cocoa-sharp
$ rm -rf CurrencyConverter.app
$ macpack -m:2 -o:.  -r:/Library/Frameworks/Mono.framework/Versions/Current/lib/    
  libCocoaSharpGlue.dylib -r:CurrencyConverter.nib -n:CurrencyConverter 
  -a:CurrencyConverter.exe

El CurrencyConverter.app resultante es solo otra aplicación de Mac OS X en lo que concierne al Finder, y puede abrirse desde Finder o iniciarse desde la Terminal utilizando el comando abierto -a CurrencyConverter.

    
respondido por el massimogentilini 16.12.2010 - 19:18
2

Mejorando la respuesta de Calavera para permitirte hacerlo con un parámetro, el script debería tener el siguiente aspecto:

#!/bin/bash
mono $1

De esa manera puedes hacerlo:

./abc.sh name_of_the_app.exe

Habría agregado esto como un comentario, pero el formato se habría perdido

    
respondido por el Martin Marconcini 16.12.2010 - 14:59
1

No tengo mucha experiencia con mono, pero probablemente tendrás que crear un script de shell ejecutable que haga la llamada mono por ti. Algo como:

$ vi abc.sh

#!/bin/bash
#abc.sh
mono abc.exe
:wq

$ chmod +x abc.sh
$ ./abc.sh
    
respondido por el Robert S Ciaccio 16.12.2010 - 05:22

Lea otras preguntas en las etiquetas