Last active
August 31, 2017 03:06
-
-
Save craigminihan/ea6893d63665f0021c92 to your computer and use it in GitHub Desktop.
Script to build Mono 3.10 and MonoDevelop 5.1 on CentOS 6.4+ Minimal
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# run me as root | |
mkdir ~/Downloads | |
cd ~/Downloads | |
MONOVERSION="3.10.0" | |
GECKOSHARPVERSION="2.0-0.12" | |
yum install wget | |
# download the source files we are about to build | |
wget http://download.mono-project.com/sources/gtk-sharp212/gtk-sharp-2.12.21.tar.gz | |
wget http://download.mono-project.com/sources/gecko-sharp2/gecko-sharp-$GECKOSHARPVERSION.tar.gz | |
wget http://download.mono-project.com/sources/gnome-sharp2/gnome-sharp-2.24.1.tar.bz2 | |
wget http://download.mono-project.com/sources/gtksourceview-sharp2/gtksourceview-sharp-2.0-0.12.tar.bz2 | |
wget http://download.mono-project.com/sources/monodevelop/monodevelop-$MONODEVELOPVERSION.tar.bz2 | |
# get the dev tools | |
yum -y groupinstall "Development Tools" --exclude=git | |
# install git | |
yum -y remove git | |
wget http://pkgs.repoforge.org/git/perl-Git-1.7.11.3-1.el6.rfx.x86_64.rpm | |
wget http://pkgs.repoforge.org/git/git-1.7.11.3-1.el6.rfx.x86_64.rpm | |
yum -y localinstall perl-Git-1.7.11.3-1.el6.rfx.x86_64.rpm git-1.7.11.3-1.el6.rfx.x86_64.rpm | |
# install some package deps we need | |
yum -y install atk atk-devel | |
yum -y install pango pango-devel | |
yum -y install gtk2-devel libglade2-devel libgnome-devel | |
yum -y install zlib zlib-devel | |
yum -y install dos2unix | |
# get libgdiplus from EPEL | |
wget https://dl.fedoraproject.org/pub/epel/6/x86_64/libgdiplus-2.10-1.el6.x86_64.rpm | |
wget https://dl.fedoraproject.org/pub/epel/6/x86_64/libgdiplus-devel-2.10-1.el6.x86_64.rpm | |
yum -y localinstall libgdiplus-2.10-1.el6.x86_64.rpm libgdiplus-devel-2.10-1.el6.x86_64.rpm | |
# build mono first | |
tar xvfj mono-$MONOVERSION.tar.bz2 | |
cd mono-$MONOVERSION | |
./configure --with-large-heap=yes | |
make -j 4 && make install | |
cd .. | |
# tell the configure scripts where to find the custom installed package files | |
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig | |
# gtk# | |
tar xvfz gtk-sharp-2.12.21.tar.gz | |
cd gtk-sharp-2.12.21 | |
./configure | |
make -j 4 && make install | |
cd .. | |
# Gecko# | |
dos2unix /usr/local/bin/gapi2-codegen | |
tar xvfz gecko-sharp-$GECKOSHARPVERSION.tar.gz | |
cd gecko-sharp-$GECKOSHARPVERSION | |
./configure | |
make -j 4 && make install | |
cd .. | |
# Gnome# | |
yum -y install libgnomecanvas-devel libgnome-devel libgnomeui-devel libgnomeprint22-devel libgnomeprintui22-devel libpanelappletmm-devel | |
dos2unix /usr/local/bin/gapi2-fixup | |
tar xvfj gnome-sharp-2.24.1.tar.bz2 | |
cd gnome-sharp-2.24.1 | |
./configure | |
echo -e "all:\ninstall:\n" > sample/gnomevfs/Makefile | |
make -j 4 && make install | |
cd .. | |
# GTK SourceView | |
yum -y install gtksourceview gtksourceview-devel | |
tar xvfj gtksourceview-sharp-2.0-0.12.tar.bz2 | |
cd gtksourceview-sharp-2.0-0.12 | |
./configure | |
echo -e "all:\ninstall:\n" > sample/Makefile | |
make -j 4 && make install | |
cd .. | |
# MonoDevelop | |
git clone https://github.com/mono/monodevelop.git | |
cd monodevelop | |
git checkout origin/monodevelop-5.1-branch | |
./configure | |
make && make install | |
cd .. | |
# add the libs into the linker path | |
ldconfig /usr/local/lib |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment