You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu 17.04下MonoDevelop中C#项目多个引用未安装求助

解决Ubuntu 17.04下MonoDevelop引用缺失的问题

嘿,我之前在Ubuntu 17.04上折腾MonoDevelop的时候也碰到过几乎一模一样的问题——旧项目要么崩溃要么一堆GTK相关引用标红,给你几个亲测有效的解决步骤:

  • 补全Mono和GTK#核心依赖
    你看到的atk-sharp、gtk-sharp这些都是GTK#的核心组件,Ubuntu默认可能没装全。打开终端跑这两条命令:

    sudo apt-get update
    sudo apt-get install mono-complete gtk-sharp2 gtk-sharp3
    

    mono-complete会把Mono的所有核心组件一次性装全,避免漏装;gtk-sharp2和gtk-sharp3覆盖了新旧版本的GTK绑定,你的旧项目大概率用的是2.x版本,装完后系统里就有这些引用对应的dll了。

  • 重置MonoDevelop的引用缓存
    有时候MonoDevelop会因为缓存没更新,识别不到刚装的依赖。先彻底关掉MonoDevelop,然后在终端执行:

    rm -rf ~/.local/share/MonoDevelop/*
    

    这个命令会删除MonoDevelop的本地缓存,重启软件后它会重新扫描系统里的所有可用引用,很多时候标红的问题就直接消失了。

  • 手动添加缺失的引用(备用方案)
    如果上面两步没解决,就手动补引用:打开项目后右键点击「引用」→「添加引用」,在弹出窗口的.NET或Mono标签里找对应的组件(比如gtk-sharp、glib-sharp),选中添加即可。要是列表里找不到,就点「浏览」,手动定位到dll的安装路径:

    • GTK# 2.x的dll一般在/usr/lib/mono/gtk-sharp-2.0/
    • GTK# 3.x的dll在/usr/lib/mono/gtk-sharp-3.0/
      找到对应dll选中添加就行。
  • 检查项目的目标框架版本
    旧项目可能是基于旧版Mono创建的,和Ubuntu 17.04里的Mono版本不匹配。右键项目→「选项」→「构建」→「通用」,把「目标框架」改成当前系统安装的Mono版本(Ubuntu 17.04默认是Mono 4.8.0),或者对应的.NET Framework版本(比如4.5),这样能避免版本兼容导致的引用问题。

另外,之前的崩溃问题大概率也是依赖不全或版本不兼容导致的,上面的步骤应该能一并解决。如果还是有问题,可以试试彻底重装MonoDevelop:sudo apt-get remove --purge monodevelop && sudo apt-get install monodevelop。

内容的提问来源于stack exchange,提问作者DinghySailor

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 10:42:35