类型 'Application' 是在未引用的程序集中定义的。gtk-sharp, 版本=2.12



我正在使用GTK# 2.12版本构建应用程序。我为此安装了MonoDevelop。做了一个示例应用程序。 当我将项目的设置从 GTK#3 更改为 GTK# 2.12 时,所有引用都将更新为 GTK#2.12。

当我编译项目时,编译器会抛出错误。

/

local/mnt/workspace/vkumbhan/work/Program.cs(25,25):错误 CS0012:类型"应用程序"在未引用的程序集中定义。必须添加对程序集"gio-sharp, Version=3.0.0.0, Culture=neutral, PublicKeyToken=35e10195dab3c99f"的引用。(CS0012)

class MainClass
{
public static void Main(string[] args)
{
Application.Init();     //error came this line
MainWindow win = new MainWindow();
win.Show();
Application.Run();     //error came this line
}
}

当我查看应用程序类的引用时,我发现应用程序引用了gtk-sharp 3.0.0.0。

用于检查是否安装GTK# 2.12。

apt-cache policy libgtk2.0-0 libgtk-3-0

两个版本都安装在计算机上。

你能帮我吗,如何解决问题?

查找命令行:请帮助更新引用 2.12.0.0 而不是 3.0.0.0

/

usr/lib/mono/msbuild/15.0/bin/Roslyn/csc.exe/noconfig/nowarn:1701,1702,2008/nostdlib+/platform:anycpu32bitpreferred/errorreport:prompt/warn:4/define:DEBUG/errorendlocation/preferreduilang:en-US/highentropyva+/reference:/usr/lib/mono/gac/atk-sharp/3.0.0.0__35e10195dab3c99f/atk-sharp.dll/reference:/usr/lib/mono/gac/gdk-sharp/3.0.0.0__35e10195dab3c99f/gdk-sharp.dll/reference:/usr/lib/mono/gac/glade-sharp/2.12.0.0__35e10195dab3c99f/glade-sharp.dll/reference:/usr/lib/mono/gac/gtk-sharp/3.0.0.0__35e10195dab3c99f/gtk-sharp.dll/reference:/usr/lib/mono/4.5-api/Mono.Posix.dll/reference:/usr/lib/mono/4.5-api/mscorlib.dll/reference:/usr/lib/mono/gac/pango-sharp/3.0.0.0__35e10195dab3c99f/pango-sharp.dll/reference:/usr/lib/mono/4.5-api/System.Core.dll/reference:/usr/lib/mono/4.5-api/System.dll/debug+/debug:portable/optimize-/out:obj/Debug/Sample.exe/子系统版本:6.00/资源:gtk-gui/gui.stetic,gui.stetic/target:winexe/utf8output MainWindow.cs Program.cs Properties/AssemblyInfo.cs gtk-gui/generated .cs gtk-gui/MainWindow.cs "/tmp/.NETFramework,Version=v4.5.AssemblyAttributes.cs">

谢谢!

解决此问题的最简单方法是在 MonoDevelopment 中创建一个新的 Gtk# 应用程序,该应用程序默认为 Gtk# 2.12,因为设计器需要该版本。

然后,可以从未编译的项目中复制类文件 (*.cs)。

最新更新