我想将Mono运行时与我的OS X应用程序捆绑在一起,这样用户就不需要安装额外的框架来运行我的应用程序了。
当尝试使用MonoDevelop的自动打包功能,并检查“在应用程序包中包含Mono运行时”时,我被告知我需要Xamarin.Mac。现在,Xamarin对于像我这样的小公司来说价格相当高,我希望我不必购买整个Xamarin软件包来捆绑运行时。
我的猜测是还有其他方法可以做到这一点。我特意记得一段时间阅读包含框架和设置环境变量的内容,但我再也找不到了。互联网上有评论和提示,即使是在SO上也是如此,而且共识似乎确实是可能的,但我还没有找到如何这样做的描述。大多数答案似乎链接到mono-project.com网页的部分内容,现在已经不见了,因为它被移植到Xamarin包中,我怀疑。
那么,是否有任何非Xamarin方式在我的应用程序包中包含Mono运行时,让用户在不安装Mono的情况下运行它?
答案 0 :(得分:6)
我相信Stephane的答案是不完整的。只要您为最终用户提供独立于您的升级单声道运行时的功能,您就可以捆绑单声道运行时。而且您不必捆绑整个运行时,只需要应用程序所需的部分。
以下是一篇较旧的帖子,介绍了一些步骤: http://mono.1490590.n4.nabble.com/Embedding-into-XCode-project-td1751644.html
祝你好运。
答案 1 :(得分:-2)
单声道运行时是双重许可,GPLv2和Xamarin。使用您拥有的GPL许可版本,您在法律上无法捆绑运行时(即使技术上可行)。 通过购买Xamarin.Mac,您大多购买运行时的GPL免费版本的权利,您可以将其嵌入到您的应用程序中。
您仍然可以使用MonoMac开发和分发应用程序,但您的用户需要安装mono(通过某种安装程序),您将无法发布到App Store。