我有一些带有GTK#用户界面的单开发程序在ubuntu 11.04中顺利运行,没有统一性。我已经升级到统一的ubuntu 11.10。现在我得到以下错误:
"找不到类型或命名空间名称"Gtk"。是否缺少程序集引用?"。
事实上,在我的参考文献中,atk sharp、gdk sharp,glade sharp、glid sharp、stk sharp和pango sharp都是红色的,我无法重新添加它们。
如果我搜索要在gtk-sharp上安装的软件,它会告诉我gtk#2.10已经安装。如果我在monodedevelop中启动一个新的gtk项目,它会给出同样的错误。
此问题是由Mono运行时版本引起的。请将项目的Mono运行时版本从Mono/.NET 3.5更改为Mono/.NET 4.0以解决此问题。
为此,请遵循以下步骤:
- 使用解决方案资源管理器启动"项目选项"对话框
- 选择"生成"组下可用的"常规"项目设置
- 将运行时版本更改为Mono/.NET 4.0
- MonoDevelop将把当前项目升级为Visual Studio 2010等价物。然后,重新构建项目并验证结果
在我的案例中,解决方案是安装GTK#库。对于基于Debian的发行版,GTK#可以安装为
sudo apt-get install gtk-sharp2
或者,如果你使用的是基于RedHat的发行版,
yum install gtk-sharp2-devel
请参阅上面Tommy的评论。