Я ищу работу над приложением, которое должно работать как на Windows, так и на OSX. Поскольку я уже хорошо знаком с C#/.NET, я подумал, что стоит взглянуть на использование Mono. Но я также хочу, чтобы его было очень легко установить, и я не хочу, чтобы пользователям приходилось устанавливать пакет Mono отдельно. Можно ли создать пакет OS X .app, который просто включает ВСЕ? То есть мое приложение, ресурсы и полная среда выполнения Mono?
Можно ли включить Mono Runtimes в комплект OSX .app?
Ответы (2)
Да, ты можешь это сделать. Выберите приложение, любое приложение и Показать содержимое пакета. Немного осмотритесь, и вы увидите, что внутри есть каталог Contents/MacOS. Он будет содержать файл с установленным битом выполнения. Это может быть машинный код или любой старый скрипт со строкой #!
в начале. Все, что вам нужно сделать, это продублировать структуру каталогов с помощью каркасного приложения, засунуть среду выполнения Mono куда-нибудь в каталог ресурсов и написать сценарий bash, который все инициализирует. Где-то могут быть автоматизированные утилиты для этого, но это довольно легко сделать вручную.
Я бы рекомендовал использовать ваш любимый инструмент сборки для автоматизации этого процесса.
exec
. У меня действительно нет ссылки, так как я обнаружил это экспериментальным путем.
- person Bob Aman; 11.01.2010
Contents/Resources
.
- person Bob Aman; 12.05.2011
Вполне возможно, приложив немало усилий и немного позабавившись с набором инструментов, скомпилировать приложение .NET, статично ориентированное на платформу Mac OS, без необходимости развертывания моно с ним. Посетите этот веб-сайт, на котором рассказывается о том, как Mono статически используется в некоторых приложениях для iPhone.
Еще один отличный ресурс — канал #mono на irc.gnome.org или irc.gimp.net (http://mono-project.com/IRC)