我在Monodevelop中编写了几个简单的控制台C#程序,但它们似乎在调试时运行在一些仿真环境中。最终的结果是一个.exe文件,它不会在Ubuntu上本地运行。
我需要知道的是,Mono是否与Windows上的VisualC#相同?我们是否可以使用Monodevelop创建本地GUI应用程序,就像使用QT ()一样?如果是,怎么做?如果没有,为什么?为什么我们需要Linux上的Mono?
发布于 2014-01-09 13:38:19
C#和属于.NET框架的所有其他语言都是解释语言。它们是伪编译的,而不是真正编译的(如C)。.NET框架的字节码称为共同中间语言(CIL)。
通用中间语言的解释器(有时称为“虚拟机”)是Windows上的.NET公共语言运行时和Linux上的单声道。因此,C#应用程序不会运行“本机”(即没有解释器),即使在Windows上也不会。
可能令您惊讶的是,在某些Linux发行版上默认情况下没有安装Mono,而.NET运行时则是这样。
无论如何,您可以用C#编写与Ubuntu很好地集成的应用程序。男子气的女孩子就是一个例子。
还有另一种语言,类似于C#,由GNOME项目开发,即瓦拉。Vala被翻译成C,而C本身就是编译的,所以它将运行“本机”。因为Vala是由GNOME开发人员为GNOME开发人员构建的,因此与GNOME桌面环境集成非常容易。
发布于 2014-01-09 13:41:53
要为Ubuntu开发,请使用QML:
https://askubuntu.com/questions/401818
复制相似问题