【发布时间】:2013-05-29 19:55:40
【问题描述】:
我正在尝试在 CentOS 5.9 环境中安装 Mono 和 Monodevelop。
我尝试了以下说明,但没有成功。
http://fealves78.blogspot.co.uk/2012/08/install-mono-and-monodevelop-on-centos.html
谁能建议上述链接的替代方案。
【问题讨论】:
标签: linux mono centos monodevelop
我正在尝试在 CentOS 5.9 环境中安装 Mono 和 Monodevelop。
我尝试了以下说明,但没有成功。
http://fealves78.blogspot.co.uk/2012/08/install-mono-and-monodevelop-on-centos.html
谁能建议上述链接的替代方案。
【问题讨论】:
标签: linux mono centos monodevelop
在这些系统上,我通常从源代码安装 Mono。这需要做更多的工作,但您不必依赖可能会或可能不会维护的过时或损坏的软件包。此外,它还可以轻松升级到最新版本的 Mono。
以下说明已在 CentOS 6.4 上测试。
以 root 身份访问 /usr/src
su
cd /usr/src
确保安装了 GCC 和朋友(以构建 Mono 源代码)
yum install gcc gcc-c++ libtool bison autoconf automake
获取并解压 Mono 源代码
wget http://download.mono-project.com/sources/mono/mono-3.0.7.tar.bz2
tar -xvjf mono-3.0.7.tar.bz2
构建和安装 Mono
cd mono-3.0.7
./configure --prefix=/usr
make && make install
使用 mono --version 和 mcs --version 验证您的 Mono 安装是否正常
构建 GDI+ 兼容层(System.Drawing 需要)
yum install glib2-devel libX11-devel pixman-devel fontconfig-devel freetype-devel libexif-devel libjpeg-devel libtiff-devel libpng-devel giflib-devel
cd /usr/src
wget http://download.mono-project.com/sources/libgdiplus/libgdiplus-2.10.9.tar.bz2
tar -xvjf libgdiplus-2.10.9.tar.bz2
cd libgdiplus-2.10.9
./configure --prefix=/usr
make && make install
对于 Mono 来说就是这样,但构建 MonoDevelop 是另一回事......
构建 Gtk-Sharp
yum install gtk2-devel libglade2-devel
cd /usr/src
wget http://download.mono-project.com/sources/gtk-sharp212/gtk-sharp-2.12.8.tar.bz2
tar -xvjf gtk-sharp-2.12.8.tar.bz2
cd gtk-sharp-2.12.8
./configure --prefix=/usr
make && make install
不幸的是,我认为没有合适的 gnome-sharp 源 tarball 足够新以满足我们的需要。因此,我们将从 Git 存储库中获取它。
yum install pango-devel atk-devel libgnome-devel libgnomecanvas-devel libgnomeui-devel git svn libtool
cd /usr/src
git clone git://github.com/mono/gnome-sharp
cd gnome-sharp
./bootstrap-2.24 --prefix=/usr
make && make install
Mono 插件也一样...
cd /usr/src
git clone git://github.com/mono/mono-addins
cd mono-addins
./autogen.sh --prefix=/usr
make && make install
最后,我们可以自己构建 MonoDevelop。
cd /usr/src
wget http://download.mono-project.com/sources/monodevelop/monodevelop-3.1.1.tar.bz2
tar -xvjf monodevelop-3.1.1.tar.bz2
cd monodevelop-3.1.1
PKG_CONFIG_PATH=/usr/lib/pkgconfig
export PKG_CONFIG_PATH
./configure --prefix=/usr --select
make && make install
您现在应该在 Applications 下的 Programming 菜单中看到 MonoDevelop!
现在我们正在做所有这些有趣的 Git 工作,随时可以轻松升级到 Mono 的最新(预发布)版本...
第一次签出 Git:
cd /usr/src
git clone git://github.com/mono/mono
cd mono
./autogen.sh --prefix=/usr
make && make install
仅升级到最新版本(第一次从 Git 构建之后)
cd /usr/src/mono
git pull
./autogen.sh --prefix=/usr
make && make install
如果你不想要最前沿的技术,你可以使用 Git 来检查 Mono 的更稳定的分支。我将把它留给维基百科作为练习。
【讨论】:
gnome-sharp 时,它会因错误 Could not find a part of the path "/usr/src/share/gapi-2.0/glib-api.xml" 而失败。有关如何解决此问题的任何想法?
/usr/src/gtk-sharp-2.12.8/doc' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory /usr/src/gtk-sharp-2.12.8' make: *** [all] Error 2
为了构建 gtk-sharp,我必须设置以下环境变量:
PKG_CONFIG_PATH=/usr/lib/pkgconfig
export PKG_CONFIG_PATH
没有这个,配置脚本正在寻找 csc.exe
【讨论】:
在这些系统上,我通常从源代码安装 Mono。这需要更多的工作,但您不必依赖可能会或可能不会维护的过时或损坏的软件包。
以下说明已在 CentOS 5.9 上测试。
由于安装的 Glib 和 GTK+ 版本的限制,您可以在 RHEL5 (CentOS 5.x) 上编译的最新 GTK# 版本是 2.10.4。使用此版本的 GTK#,您可以构建的最新版本 MonoDevelop 是 2.0(甚至不是 2.2)。
您仍然可以运行最新版本的 Mono。我有提供 ASP.NET MVC3 应用程序的 CentOS 5.x 盒子。
以 root 身份访问 /usr/src
su
cd /usr/src
确保安装了 GCC 和朋友(以构建 Mono 源代码)
yum install gcc gcc-c++ libtool bison autoconf automake
获取并解压 Mono 源代码
wget http://download.mono-project.com/sources/mono/mono-3.0.7.tar.bz2
tar -xvjf mono-3.0.7.tar.bz2
构建和安装 Mono
cd mono-3.0.7
./configure --prefix=/usr
make && make install
使用 mono --version 和 mcs --version 验证您的 Mono 安装是否正常
构建 GDI+ 兼容层(System.Drawing 需要)
yum install glib2-devel libX11-devel pixman-devel fontconfig-devel freetype-devel libexif-devel libjpeg-devel glib2-devel libtif-devel libpng-devel giflib-devel
cd /usr/src
wget http://download.mono-project.com/sources/libgdiplus/libgdiplus-2.10.tar.bz2
tar -xvjf libgdiplus-2.10.tar.bz2
【讨论】: