Estoy buscando trabajar en una aplicación que necesita ejecutarse tanto en Windows como en OSX. Como ya estoy muy familiarizado con C# /. NET, pensé en echar un vistazo al uso de Mono. Pero también quiero que sea muy fácil de instalar y no quiero que los usuarios tengan que instalar el paquete Mono por separado. ¿Es posible crear un paquete de OS X.app que simplemente incluye TODO? Es decir, mi aplicación, los recursos y el tiempo de ejecución Mono completo?Posible incluir Mono Runtimes en el paquete OSX .app?
Respuesta
Sí, puedes hacer esto. Elija una aplicación, cualquier aplicación y Mostrar contenido del paquete. Explore un poco y verá que hay un directorio Contents/MacOS adentro. Contendrá un archivo con el bit de ejecución establecido. Puede ser un código de máquina o cualquier secuencia de comandos anterior con una línea #!
al principio. Todo lo que necesita hacer es duplicar la estructura del directorio con una aplicación de esqueleto, introducir su tiempo de ejecución de Mono en el directorio de Recursos en alguna parte, y escribir un script bash que lo inicialice todo. Puede haber utilidades automatizadas para hacer esto flotando por ahí, pero es bastante fácil hacerlo manualmente.
Recomendaría utilizar su herramienta de compilación favorita para automatizar este proceso.
Es posible, con un poco de piratería y algo de diversión de herramientas para compilar una aplicación .NET estáticamente dirigida para la plataforma Mac OS, sin necesidad de implementar mono con ella. Echa un vistazo a este sitio web sobre cómo Mono se está utilizando estáticamente en algunas aplicaciones de iPhone.
Otro gran recurso es el canal #mono en irc.gnome.org o irc.gimp.net (http://mono-project.com/IRC)
Esto no es realmente necesario en el mac. IOS necesita hacer esto debido a su estricta política de enlace estático único. Mac no tiene tales restricciones. – Shayne
- 1. Cómo crear un paquete .app mono para Mac OS
- 2. Pregunta de novato: GTK # (Mono) en OSX
- 3. ¿Es posible crear un paquete Mono que incluya bibliotecas WPF?
- 4. Perl, incluir dinámicamente el paquete
- 5. Uso de un paquete JRE en OSX
- 6. ¿Es posible incluir archivos de paquete de recursos dentro de un paquete de recursos
- 7. Ubuntu + Mono + ASP.NET, ¿es posible?
- 8. cómo incluir un directorio en el paquete debuild
- 9. ¿Es posible el parche de mono en Java?
- 10. ¿Es posible usar el motor Razor 2.0 view en mono?
- 11. Incluir OpenCV en el paquete de aplicaciones de Android
- 12. Creando un archivo Mac .app en Windows usando Mono
- 13. ¿Es posible incluir múltiples módulos en una sola declaración "incluir"?
- 14. CMake, Microsoft Visual Studio y Monolithic Runtimes
- 15. ¿Es posible ejecutar LINQPad con Mono (Mac)
- 16. ¿Es posible incluir JButton en una JTable?
- 17. paquete de Google App Engine "reempaquetado"
- 18. Incluir/Excluir archivos al crear el paquete Azure
- 19. PdfSharp en Mono
- 20. ¿Cómo incluir el archivo jar al crear un paquete R?
- 21. Mono en el iPhone?
- 22. Cocoa App Sandbox - Error al cargar el paquete
- 23. Instalar mod_mono en Mac OSX
- 24. Gatekeeper firmando para OSX DMG fuera de OSX/XCode/Mac App Store?
- 25. ¿Es posible incluir subdirectorios utilizando dist utils (setup.py) como parte de los datos del paquete?
- 26. Cómo incluir archivos estáticos en setuptools - paquete python
- 27. Automatice las compilaciones de OSX Mac App Store
- 28. ¿Es posible incluir/importar código al Manifiesto de Android?
- 29. ¿Cómo convierto un Mono .exe en un paquete para OS X?
- 30. Incluyendo HTML en cadena de paquete de recursos JSF - posible?
respuesta impresionante. Estoy seguro de que no es recomendable, aunque ... –
Gracias. En cualquier caso, realmente depende de lo que quiere decir con "no recomendado". Si lo hiciste al 100% manualmente, entonces sí, absolutamente, esa es una mala idea. Sería un serio problema de implementación allí. Pero el primer paso para automatizar algo es saber cómo hacerlo manualmente. Para aclarar, si no hay una herramienta de empaquetado preconstruida para hacer esto para el tiempo de ejecución Mono, escriba una secuencia de comandos rápida para automatizar esto e insértelo en su proceso de compilación. –
Al "inicializar todo", ¿qué quieres decir? ¿Quiere decir que inicia llamadas una función de línea de comandos como "mono hello.exe"? ¿Podría indicarnos un enlace? Gracias. –