单声道gtk你好世界失败,'失踪的方法'

时间:2012-05-06 20:09:24

标签: mono gtk gtk#

我第一次尝试单声道。以下是我设置它的步骤。

在VirtualBox中安装Kubuntu 12.04 LTS

apt-get install mono-complete gtk-sharp2

然后我尝试在本教程中运行hello world应用程序。

http://www.mono-project.com/Mono_Basics

命令行应用程序运行正常。

我按照说明使用以下命令编译了GTK应用程序:

gmcs hello.cs -pkg:gtk-sharp-2.0

当我运行应用程序时,它失败并出现以下错误:

Missing method System.Type::op_Inequality(Type,Type) in assembly /usr/lib/mono/2.0/mscorlib.dll, referenced in assembly /usr/lib/mono/gac/gtk-sharp/2.12.0.0__35e10195dab3c99f/gtk-sharp.dll

Unhandled Exception: System.MissingMethodException: Method not found: 'System.Type.op_Inequality'.
  at Gtk.Window..ctor (System.String title) [0x00000] in <filename unknown>:0
  at Hello.Main () [0x00000] in <filename unknown>:0
[ERROR] FATAL UNHANDLED EXCEPTION: System.MissingMethodException: Method not found: 'System.Type.op_Inequality'.
  at Gtk.Window..ctor (System.String title) [0x00000] in <filename unknown>:0
  at Hello.Main () [0x00000] in <filename unknown>:0

对我而言,单声道库看起来与gtk-sharp库不兼容。

有没有人对如何使这项工作有任何建议?

1 个答案:

答案 0 :(得分:22)

所有12.04版Ubuntu版本都有Mono默认为4.0配置文件(类似于.NET 4.0)。您正在使用gmcs编译器编译您的hello.cs,该编译器旨在定位2.0配置文件(类似于.NET 2.0)。

使用dmcs编译器代替gmcs,错误将消失。