安装前的准备工作
在开始安装 Mono 之前,确保系统满足基本要求并完成必要的准备工作,CentOS 6.8 作为一款较老的操作系统,可能需要手动配置部分依赖项,以 root 用户或具有 sudo 权限的用户登录系统,并更新系统软件包列表,执行以下命令:

sudo yum update -y
此命令会更新系统已安装的软件包到最新版本,确保兼容性和安全性,安装 Mono 所需的基础依赖项,包括编译工具和开发库,运行以下命令:
sudo yum groupinstall "Development Tools" -y sudo yum install wget git bzip2 gettext glib2 libicu libjpeg libtiff libpng giflib libX11 libXft libXinerama libfontconfig cairo -y
这些依赖项涵盖了 Mono 运行时和编译环境所需的核心组件,确保后续安装过程顺利进行。
下载并安装 Mono 官方仓库
CentOS 6.8 的官方软件仓库可能不包含 Mono 的最新版本,因此需要添加 Mono 官方仓库,访问 Mono 官网获取适用于 CentOS 6 的 Yum 仓库配置文件,以下是具体步骤:
下载 Mono 的 Yum 仓库配置文件:
sudo rpm --import "http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3FA7E0328081BFF6A14DA79CA4214833FBF8ACD0" sudo rpm -Uvh http://download.mono-project.com/repo/centos6/mono-release.rpm
第一条命令用于导入 Mono 的 GPG 密钥,确保软件包的真实性和完整性;第二条命令则添加了 Mono 官方仓库到系统中,添加完成后,可以通过以下命令验证仓库是否成功配置:
sudo yum search mono
如果输出中包含 Mono 相关的软件包(如 mono-devel、mono-data 等),说明仓库配置成功。
编译并安装 Mono
虽然 Mono 官方提供了预编译的二进制包,但为了确保兼容性和自定义选项,建议从源代码编译安装,以下是详细步骤:
下载 Mono 的最新稳定版源代码,访问 Mono 官网的 GitHub 仓库获取最新版本的 tarball,下载 Mono 6.12.0 版本:

wget https://download.mono-project.com/sources/mono/mono-6.12.0.tar.bz2 tar -xjvf mono-6.12.0.tar.bz2 cd mono-6.12.0
解压后进入源代码目录,运行 configure 脚本检查系统环境并生成 Makefile,可以使用以下命令配置编译选项:
./configure --prefix=/usr/local/mono
--prefix 参数指定了 Mono 的安装路径,可根据需求调整,配置完成后,执行以下命令开始编译:
make sudo make install
编译过程可能需要较长时间,具体取决于系统性能,完成后,将 Mono 的可执行文件路径添加到系统环境变量中,以便全局调用,编辑 /etc/profile 文件:
echo 'export PATH=$PATH:/usr/local/mono/bin' | sudo tee -a /etc/profile source /etc/profile
验证安装并配置环境
安装完成后,需要验证 Mono 是否正确配置并检查版本信息,执行以下命令:
mono --version
如果输出显示 Mono 的版本号及相关编译信息,说明安装成功,还可以运行一个简单的测试程序,例如创建一个 "Hello World" 的 C# 文件:
echo 'using System; public class Test { public static void Main() { Console.WriteLine("Hello, Mono!"); } }' > test.cs
mcs test.cs
mono test.exe
如果终端输出 "Hello, Mono!",则 Mono 环境已完全就绪。
常见问题及解决方案
在安装和使用 Mono 的过程中,可能会遇到一些常见问题,以下是两个典型问题及其解决方法:
问题 1:编译时报错 "glib missing"
原因:系统缺少 glib2 开发库。
解决方法:通过 Yum 安装 glib2-devel 包:

sudo yum install glib2-devel -y
安装完成后重新运行 configure 和 make 命令即可。
问题 2:运行 Mono 程序时提示 "cannot find assembly"
原因:程序依赖的动态链接库路径未正确配置。
解决方法:将 Mono 的库路径添加到 /etc/ld.so.conf 文件中:
echo '/usr/local/mono/lib' | sudo tee -a /etc/ld.so.conf sudo ldconfig
执行 ldconfig 命令更新动态链接器缓存后,再次运行程序即可。
FAQs
Q1:CentOS 6.8 安装 Mono 后如何卸载?
A1:如果通过源码编译安装,可进入源码目录执行 sudo make uninstall 卸载;若通过 Yum 安装,运行 sudo yum remove mono* 即可。
Q2:Mono 是否支持 .NET Core?
A2:不支持,Mono 是 .NET Framework 的开源实现,而 .NET Core 是微软推出的跨平台运行时,两者不兼容,如需运行 .NET Core 应用,请安装 .NET Core SDK。