我最近发现自己需要为CentOS 6构建Mono 3.0,我的基础设施人员要求尽可能保持系统尽可能靠近CentOS(如果可能的话,没有第三方软件包)。
因为目前没有我能找到的Mono 3.0 RPM,所以我在一个干净的Minimal安装的CentOS 6.3上进行了从头开始构建它的练习。
可以在CentOS 6.3上构建没有外部软件包的Mono 3.0。
我最近发现自己需要为CentOS 6构建Mono 3.0,我的基础设施人员要求尽可能保持系统尽可能靠近CentOS(如果可能的话,没有第三方软件包)。
因为目前没有我能找到的Mono 3.0 RPM,所以我在一个干净的Minimal安装的CentOS 6.3上进行了从头开始构建它的练习。
可以在CentOS 6.3上构建没有外部软件包的Mono 3.0。
执行CentOS 6.3最小安装
ifup eth0
yum -y update
yum -y install glib2-devel
yum -y install libpng-devel
yum -y install libjpeg-devel
yum -y install giflib-devel
yum -y install libtiff-devel
yum -y install libexif-devel
yum -y install libX11-devel
yum -y install fontconfig-devel
yum -y install gettext
yum -y install make
yum -y install gcc-c++
# amusing hack to 修复mono make文件
export echo=echo
# build libgdiplus
curl -O http://download.mono-project.com/sources/libgdiplus/libgdiplus-2.10.9.tar.bz2
bunzip2 libgdiplus-2.10.9.tar.bz2
tar xvf libgdiplus-2.10.9.tar
cd libgdiplus-2.10.9
./configure --prefix=/usr/local
make
make install
# build mono
curl -O http://download.mono-project.com/sources/mono/mono-3.0.0.tar.bz2
bunzip2 mono-3.0.0.tar.bz2
tar xvf mono-3.0.0.tar
cd mono-3.0.0
./configure --prefix=/usr/local
make
make install
# tell binfmt how to launch CLR executables
echo ':CLR:M::MZ::/usr/local/bin/mono:' > /proc/sys/fs/binfmt_misc/register
使用 tpokorra存储库 同 单 3.2.5 for Centos 6.x(和其他发行版)
放文件 mono.repo 在目录中 /etc/yum.repos.d/
内容:
[home_tpokorra_mono]
name=mono and monodevelop (CentOS_CentOS-6)
type=rpm-md
baseurl=http://download.opensuse.org/repositories/home:/tpokorra:/mono/CentOS_CentOS-6/
gpgcheck=1
gpgkey=http://download.opensuse.org/repositories/home:/tpokorra:/mono/CentOS_CentOS-6/repodata/repomd.xml.key
enabled=1
yum install mono-opt
http://software.opensuse.org/download/package?project=home:tpokorra:mono&package=mono-opt