Установите Mono и Monodevelop на CentOS 5.x/6.x

Я пытаюсь установить Mono и Monodevelop в среду CentOS 5.9.

Я пробовал следующие инструкции, не повезло.

http://fealves78.blogspot.co.uk/2012/08/install-mono-and-monodevelop-on-centos.html

Может ли кто-нибудь предложить альтернативу вышеуказанной ссылке.

Ответ 1

В этих системах я обычно устанавливаю Mono из исходного кода. Это немного больше работы, но вам не нужно полагаться на устаревшие или сломанные пакеты, которые могут поддерживаться или не поддерживаться. Кроме того, он упрощает обновление до последних версий Mono.

Приведенные ниже инструкции были протестированы на CentOS 6.4.

Перейдите к /usr/src как root

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-установка с mono --version и mcs --version

Создайте уровень совместимости 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

То есть для Моно, но создание 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, который является достаточно новым для того, что нам нужно. Итак, мы получим его из репозитория 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 Addins...

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

Теперь вы должны увидеть 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. Я оставлю это как упражнение для Википедии.

Ответ 2

Для создания gtk-sharp я должен был установить следующую переменную среды:

PKG_CONFIG_PATH=/usr/lib/pkgconfig
export PKG_CONFIG_PATH

Без этого configure script искал csc.exe

Ответ 3

В этих системах я обычно устанавливаю Mono из исходного кода. Это немного больше работы, но вам не нужно полагаться на устаревшие или сломанные пакеты, которые могут поддерживаться или не поддерживаться.

Инструкции, приведенные ниже, были протестированы на CentOS 5.9.

Из-за ограничений в установленных версиях Glib и GTK +, самая новая версия GTK #, которую вы можете скомпилировать на RHEL5 (CentOS 5.x), - 2.10.4. С этой версией GTK # самая новая версия MonoDevelop, которую вы можете создать, - 2.0 (даже 2.2).

Тем не менее вы все равно можете запускать самые последние версии Mono. У меня есть пакеты CentOS 5.x, обслуживающие приложения ASP.NET MVC3.

Перейдите к /usr/src как root

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-установка с mono --version и mcs --version

Создайте уровень совместимости 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