2013-03-14 2 views
3

Я хочу связать Mono runtime с моим приложением OS X, так что пользователям не нужно будет устанавливать дополнительную фреймворк только для запуска моего приложения.Можно ли связать время исполнения Mono на OS X (без использования Xamarin)?

При попытке использования функции автоматической упаковки MonoDevelop и проверки «Включить среду выполнения Mono в комплекте приложений» мне сообщают, что для этого мне нужен Xamarin.Mac. Теперь у Xamarin довольно высокая цена на крошечную компанию, такую ​​как моя, и я надеюсь, что мне не придется покупать весь пакет Xamarin только для того, чтобы связать время исполнения.

Я предполагаю, что есть другие способы сделать это. Я spesifically помню что-то читал о включенных фреймворках и задавал переменные окружения некоторое время назад, но я больше не могу их найти. Есть комментарии и подсказки в Интернете, даже здесь, на SO, и консенсус кажется, что это действительно возможно, но мне еще предстоит найти описание , как это сделать. Похоже, что большинство ответов ссылаются на части веб-страницы mono-project.com, которые сейчас ушли, поскольку я перешел в пакет Xamarin, я подозреваю.

Итак, есть ли какой-либо способ, не относящийся к Xamarin, включить Mono runtime в моем приложении, чтобы позволить пользователям запускать его без установки Mono?

ответ

-2

Mono runtime имеет лицензию с двойным лицензированием, GPLv2 и Xamarin. Имея лицензионную версию GPL, вы юридически не можете связывать среду выполнения (даже если это технически возможно). Приобретая Xamarin.Mac, вы в основном покупаете право на бесплатную версию исполняемого файла GPL, которую вы можете встроить в свое приложение.

Вы все еще можете разрабатывать и распространять приложение с помощью MonoMac, но ваши пользователи должны будут установить моно (через какой-либо установщик), и вы не сможете публиковать их в App Store.

Смотрите также Where is the difference between Xamarin.Mac and Mono:OSX

+0

А, я вижу. Спасибо, что поняли! –

+4

Mono runtime доступно под ** GNU LGPL v2 **, что более разрешительно, чем GPL v2. – poupou

+0

Мифы о стоп-потоке. Я видел это в двух ответах, теперь @TrustMe верен –

6

Я считаю, что ответ Стефан является неполным. Вы можете связать моно исполняемую среду, пока вы предоставляете конечному пользователю возможность обновить моно исполняемую среду независимо от вас. И вам не нужно связывать всю рабочую среду, просто те части, которые необходимы вашему приложению.

Вот один старше пост, который описывает некоторые шаги: http://mono.1490590.n4.nabble.com/Embedding-into-XCode-project-td1751644.html

удачи.