我正在使用GTK#2.12版本构建应用程序。我为此安装了MonoDevelop。进行了示例应用程序。 当我在项目上将设置从GTK#3更改为GTK#2.12时,所有引用都更新为GTK#2.12。
当我编译项目时,编译器会抛出错误。
/local/mnt/workspace/vkumbhan/work/Program.cs(25,25):错误CS0012:类型'Application'在未引用的程序集中定义。您必须添加对程序集gio-sharp的引用,版本为3.0.0.0,文化为中性,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
}
}
当我查看 Application 类的引用时,发现它是 Application ,它引用了gtk-sharp 3.0.0.0。
用于检查是否已安装GTK#2.12。
apt-cache策略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 /参考:/usr/lib/mono/gac/glade-sharp/2.12.0.0__35e10195dab3c99f/glade-sharp.dll /参考:/ 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 /参考:/usr/lib/mono/gac/pango-sharp/3.0.0.0__35e10195dab3c99f/pango-sharp.dll /参考:/usr/lib/mono/4.5-api/System.Core.dll /参考:/ usr / lib / mono / 4.5-api / System.dll / debug + / debug:便携式/ optimize- /out:obj/Debug/Sample.exe /subsystemversion:6.00 /resource:gtk-gui/gui.stetic,gui.stetic / target :winexe / utf8output MainWindow.cs Program.cs属性/AssemblyInfo.cs gtk-gui / generation.cs gtk-gui / MainWindow.cs“ /tmp/.NETFramework,Version=v4.5.AssemblyAttributes.cs”
谢谢!
答案 0 :(得分:0)
解决此问题的最简单方法是在MonoDevelop中创建一个新的Gtk#应用程序,由于设计者需要该版本,因此默认值为Gtk#2.12。
然后,您可以从未编译的项目中复制类文件(* .cs)。