专栏首页林德熙的博客dotnet 在 UOS 国产系统上安装 Mono 开发工具的方法

dotnet 在 UOS 国产系统上安装 Mono 开发工具的方法

本文使用的 UOS 是 UOS 20 x64 版本,这个系统版本是基于 debian 10 的。而默认 mono-devel 是没有提供 UOS 版本,但是有提供 debian 10 版本,而 mono-devel 有很多依赖包,因此手动安装不是很靠谱

本文推荐的方法是配置上 debian 10 的源,然后使用 apt-get 安装,这样步骤比较少。但是有缺点是也许 debian 源会帮你更新一些系统组件,会让你的系统凉凉。因此少珺同学推荐在安装完成就干掉 debian 源

进入 UOS 系统,点击左下角的图标,也就是相当于 Windows 的开始按钮,点击终端。这里的终端就是命令行工具类似 Windows 的 cmd 工具

进入 /etc/apt 文件夹,在终端输入下面代码

cd /etc/apt

使用 vim 工具编辑 sources.list 文件,添加 debian 源

vim sources.list

在 vim 工具里面,是纯命令行工具,按下 i 进入输入编辑模式,输入 debian 源

deb https://mirrors.ustc.edu.cn/debian buster main contrib non-free

上面命令详细含义请看 Debian 源使用帮助 — USTC Mirror Help 文档

编辑完成,在 vim 里面退出保存方法是按下 esc 键,也就是键盘的左上角的键,然后输入 :wq 回车就可以退出保存。这一步难度比较大,请小伙伴参阅 Linux vim如何保存退出-百度经验

接着开始安装 mono-devel 工具

sudo apt-get install mono-devel

等待安装

安装完成之后,尝试在终端输入 mono 命令,如果能看到 mono 输出,那么证明安装成功

以上方法步骤很少,很简单,下面是我开始使用的手工方法

下面方法不适合初学者

先进入 https://debian.pkgs.org/10/debian-main-amd64/mono-devel_5.18.0.240+dfsg-3_all.deb.html 找到下载链接

在终端使用 wget 下载

wget http://ftp.br.debian.org/debian/pool/main/m/mono/mono-devel_5.18.0.240+dfsg-3_all.deb

接着使用 dpkg 命令安装

dpkg -i mono-devel_5.18.0.240+dfsg-3_all.deb

安装的时候会提示你缺少必要的库,这些库在 https://debian.pkgs.org/10/debian-main-amd64/mono-devel_5.18.0.240+dfsg-3_all.deb.html 列出

除了系统的库之外,其他的库都需要手动点击进去,然后和上面步骤差不多进行安装

如果安装到一半,因为需要安装的库太多了,准备放弃了,可以采用如上文方法,在 sources.list 文件,添加 debian 源

然后运行下面代码

sudo apt update
sudo apt --fix-broken install

然后输入 y 继续

安装完成尝试输入 mono 如果能看到输出那么证明安装成功

更多请看 Mono 官网


本文会经常更新,请阅读原文: https://blog.lindexi.com/post/dotnet-%E5%9C%A8-UOS-%E5%9B%BD%E4%BA%A7%E7%B3%BB%E7%BB%9F%E4%B8%8A%E5%AE%89%E8%A3%85-Mono-%E5%BC%80%E5%8F%91%E5%B7%A5%E5%85%B7%E7%9A%84%E6%96%B9%E6%B3%95.html ,以避免陈旧错误知识的误导,同时有更好的阅读体验。

本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。欢迎转载、使用、重新发布,但务必保留文章署名林德熙(包含链接: https://blog.lindexi.com ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请 与我联系

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 在 windows 安装 Jekyll 下载 ps1 文件安装 Chocolatey安装 Ruby安装bundler安装Jekyll

    然后管理员打开 PowerShell ,因为需要使用脚本,所以让 PowerShell 支持脚本

    林德熙
  • 使用 Resharper 快速做适配器

    如果需要做一个类的重写,需要重新写这个类的所有属性和函数,本文提供一个简单的方法让大家快速重写一个类的所有属性和函数。

    林德熙
  • dotnet 通过 HttpClient 下载文件同时报告进度的方法

    通过 HttpClient 的 ContentLength 很多时候都可以拿到下载的内容的长度,通过 ReadAsync 可以返回当前读到的长度,将读取到的长度...

    林德熙
  • [海豚区块链] 全球最大啤酒制造商利用区块链技术追踪广告数据

    全球最大啤酒制造商百威英博计划通过区块链技术改变数字广告供应链,并于日前通过移动营销应用Kiip推出了首个广告系列。

    海豚区块链
  • 男女程序员的差别在哪?

     劳伦斯 · 布雷福德(Laurence Bradford)是编程教育网站「Learn to Code With Me」的创办人,她依托自己的网站对 504 名...

    程序员互动联盟
  • 张高兴的 Xamarin.Forms 开发笔记:TapGestureRecognizer 的简单介绍与应用

    张高兴
  • MySQL练习题(一)

    -- 1.查询各部门中薪资最低和最高的数据,包括的子段有部门编号、部门名词、员工名称、最高薪资、最第薪资.

    A梦多啦A
  • 张高兴的 Xamarin.Forms 开发笔记:TapGestureRecognizer 的简单介绍与应用

    张高兴
  • 使用FFmpeg新解码API解封装解码音视频(代码实例)

    在ffmpeg的源代码中,有新旧版本的编解码接口调用示例,但是demux、mux然后decode、encode的联动起来的接口调用实例并没有,在使...

    用户3765803
  • UDP&TCP Linux网络应用编程详解

    暂时想不出什么好的应用场景, 目前想到目标就是实现让两个设备通过网络传输数据, 比如开发板和Linux主机之间传数据, 以后就可以实现开发板通过网络上报数...

    韦东山

扫码关注云+社区

领取腾讯云代金券