Linux系统入门学习: CentOS 7通过yum命令安装Mono


前言

经过尝试网上各种Linux下安装mono的技术贴,这个安装过程经历了大约2周,尝试了很多种安装方式,都存在各种不同的问题,连接MSSQL数据库异常,等等各种状况,虚拟也删了N个。经过整理后个人觉得最方便,且较稳妥的 CentOS 7下安装mono方式。并记录全安装过程。

1、安装需要的库

yum -y install wget glib2-devel libtiff libtiff-devel libjpeg libjpeg-devel giflib giflib-devel libpng libpng-devel libX11 libX11-devel freetype freetype-devel fontconfig fontconfig-devel libexif libexif-devel gcc-c++ gettext unzip zip bzip2 bzip2-devel curl-devel gtk2-devel boost-devel

2、添加rpm源

rpm --import "http://keyserver.Ubuntu.com/pks/lookup?op=get&search=0x3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF"
yum-config-manager --add-repo http://jenkins.mono-project.com/repo/centos/

3、查找可用版本

yum search mono-snapshot

4、选择安装最新版本快照

yum -y install mono-snapshot-latest

ps:如果想安装某版本的快照命令为

yum -y install mono-snapshot-XXXXXXXXX

5、查看可用的Mono快照

mono-snapshot

显示结果如下:

This script will help you to set up your environment to use a
snapshot package of Mono. To use it, run:

        . mono-snapshot APP/VER

You have the following possible combinations of APP/VER:

        mono/20150520032320

Calling APP without specifying VER will load the latest version

6、执行指定快照

mono-snapshot mono

或者

mono-snapshot mono/XXXXXXXXX

显示结果:

[mono-20150520032320][root@localhost ~]#
mono-20150520032320表示mono所使用的快照

7、确认Mono是否安装成功

mono --version

显示结果:

 

Mono JIT compiler version 4.1.0 (tarball Tue May 19 23:45:50 EDT 2015)
Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
        TLS:          __thread
        SIGSEGV:      altstack
        Notifications: epoll
        Architecture:  amd64
        Disabled:      none
        Misc:          softdebug
        LLVM:          supported, not enabled.
        GC:            sgen

 

8、在CentOS上设置Mono环境变量

借助 find / -name 'libMonoPosixHelper.so' 命令查找版本的安装地址;

find / -name 'libMonoPosixHelper.so'
/opt/mono-20150520032320/lib/libMonoPosixHelper.so

记下 /opt/mono-20150520032320 (下文中将会用到)

如果安装多个版本则会有多个记录。

以下内容主要参考张善友的文章()

安装脚本将Mono安装到了/opt/mono-20150520032320/,需要将Mono的目录加入系统$PATH变量

方法一: 在/etc/profile文件中添加变量【对所有用户生效(永久的)】
用VI在文件/etc/profile文件中增加变量,该变量将会对Linux下所有用户有效,并且是“永久的”。

vi /etc/profile
在文件末尾加上如下两行代码

PATH=/opt/mono-20150520032320/bin:$PATH export PATH

修改生效,需要执行以下代码(否则重启reboot)

source /etc/profile

方法二 :在/etc/profile.d/目录下创建一个Mono的配置

cd /etc/profile.d/

创建一个新的mono.sh

vi mono.sh

在这个文件内写入以下内容

export PATH=$PATH:/opt/mono-20150520032320/bin

路径中的“mono-20150520032320”则是有上面的查看得到,如果需要配置更新版本则路径即可。

修改生效,需要执行以下代码

source mono.sh

现在可以直接执行Mono 的命令了

mono -V

Mono JIT compiler version 4.1.0 (tarball Tue May 19 23:45:50 EDT 2015)
Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
        TLS:          __thread
        SIGSEGV:      altstack
        Notifications: epoll
        Architecture:  amd64
        Disabled:      none
        Misc:          softdebug
        LLVM:          supported, not enabled.
        GC:            sgen

执行结果一致。Mono安装完成。

Ubuntu 15.04 和 CentOS 7 部署 .NET,Mono and DNX 

在Linux(Ubuntu/openSUSE/CentOS)下配置ASP.NET(Apache + Mono)

配置Linux(Apache) + Mono 下运行 asp.net

如何升级Mono

在Mono 3.0 下运行ASP.NET 4网站的主意事项

在Ubuntu操作系统上安装Mono和Jexus搭建.NET的运行环境

相关内容