MonoDevelop 1.0 on CentOS 5 and Fedora: Compiling and Installing
来源:互联网 发布:阿里云退票 编辑:程序博客网 时间:2024/05/16 15:05
Recently, I had to get MonoDevelop working on CentOS 5 for a project. Here is my blow-by-blow summary of how to get it working. The procedure is designed for CentOS 5, and it works on my Fedora 8 system as well. Since most of the activity is just compiling stuff from source, it should be pretty easy to follow on a different distribution. It’s just a matter of getting the correct packages installed in the preparation phase.
Contents
- Objectives
- Preparation
- Enabling the Environment
- Mono 1.9
- Libgdiplus
- GTK#
- Mono.Addins
- Mono Tools
- Monodoc
- Gtksourceview
- MonoDevelop
- Nant
- Finish
Objectives
- MonoDevelop platform ready to use on CentOS 5 or Fedora 8
- For minimal maintenance headache, use the base operating system to provide as much sofware as possible, with the obvious exception of Mono 1.9 and MonoDevelop 1.0
- The install is isolated from the rest of the system. MonoDevelop and its dependencies should have no overlap or interference with the base operating system.
Preparation
- Note: In this document, all source code will go in /usr/src/monodevelop-install. All installed packages will go in /usr/local/software.
-
mkdir -p /usr/local/software/mono-1.9
-
sudo chown -R `whoami` /usr/local/software # (Be careful if you already have software here)
-
mkdir -p /usr/src/monodevelop-install
-
yum install glib2-devel pango-devel gtk2-devel glade2-devel libgnome-devel /
gnome-desktop-devel gnome-panel-devel libgnomeprintui22-devel /
gtksourceview-devel ruby ruby-rdoc gtkhtml38-devel wget /
# (maybe openssl-devel also) -
echo 'PATH="/usr/local/software/mono-1.9/bin:/usr/local/software/bzr-1.2:$PATH"' /
> /usr/local/software/mono-1.9/env.sh -
echo 'export PKG_CONFIG_PATH=/usr/local/software/mono-1.9/lib/pkgconfig' /
>> /usr/local/software/mono-1.9/env.sh -
echo 'export LD_LIBRARY_PATH=/usr/local/software/mono-1.9/lib' /
>> /usr/local/software/mono-1.9/env.sh
Enabling the Environment
Important: You must always run this command before using Monodevelop, and also before continuing on with this procedure.
source /usr/local/software/mono-1.9/env.sh
In this document, Monodevelop is not completely integrated into the GUI, menus, etc. for a couple of reasons:
- Getting Monodevelop to show up in the menus is somewhat distro-specific. For RPM-based distros, look into setting the $XDG_DATA_DIRS variable in /etc/X11/xinit/xinitrc.d/, but you will also have to get the path working. For Debian-based distros, look into doing the same thing in /etc/X11/Xsession.d. And if you happen to be trying this on Solaris, look into /usr/dt/config/Xsession.d. Oh and by the way, the .desktop file that ships with Monodevelop is invalid for my Fedora 8 system! So you will have to manually edit it and (IIRC) remove the TryExec line.
- As you can see, this requires a bit of mucking with “standard” package-maintained config files, which I am hesitant to do because it violates the objective of isolation.
All this means you will always have to first source the small shell script which sets up the correct environment variables whenever you want to run Monodevelop.
Mono 1.9
-
cd /usr/src/monodevelop-install
-
wget http://go-mono.com/sources/mono/mono-1.9.tar.bz2
-
tar xjf mono-1.9.tar.bz2
-
cd mono-1.9
-
./configure --prefix=/usr/local/software/mono-1.9
- Optionally,
--with-ikvm-native=no –with-moonlight=no
- Optionally,
--with-xen_opt=yes
- Optionally,
-
make && make install
Libgdiplus:
-
cd /usr/src/monodevelop-install
-
wget http://go-mono.com/sources/libgdiplus/libgdiplus-1.9.tar.bz2
-
tar xjf libgdiplus-1.9.tar.bz2
-
cd libgdiplus-1.9
-
./configure --prefix=/usr/local/software/mono-1.9
-
make && make install
GTK#
-
cd /usr/src/monodevelop-install
-
wget http://go-mono.com/sources/gtk-sharp-2.0/gtk-sharp-2.8.4.tar.bz2
-
tar xjf gtk-sharp-2.8.4.tar.bz2
-
cd gtk-sharp-2.8.4
-
./configure --prefix=/usr/local/software/mono-1.9
-
make && make install
Mono.Addins:
-
cd /usr/src/monodevelop-install
-
wget http://go-mono.com/sources/mono-addins/mono-addins-0.3.1.tar.bz2
-
tar xjf mono-addins-0.3.1.tar.bz2
-
cd mono-addins-0.3.1
-
./configure --prefix=/usr/local/software/mono-1.9
-
make && make install
Mono Tools:
-
cd /usr/src/monodevelop-install
-
wget http://go-mono.com/sources/mono-tools/mono-tools-1.9.tar.bz2
-
tar xjf mono-tools-1.9.tar.bz2
-
cd mono-tools-1.9
-
./configure --prefix=/usr/local/software/mono-1.9
-
make && make install
Monodoc
-
cd /usr/src/monodevelop-install
-
wget http://go-mono.com/sources/monodoc/monodoc-1.9.zip
-
unzip monodoc-1.9.zip
-
cd monodoc-1.9
-
./configure --prefix=/usr/local/software/mono-1.9
-
make && make install
Gtksourceview:
-
cd /usr/src/monodevelop-install
-
wget http://go-mono.com/sources/gtksourceview-sharp-2.0/gtksourceview-sharp-2.0-0.10.tar.gz
-
tar xzf gtksourceview-sharp-2.0-0.10.tar.gz
-
cd gtksourceview-sharp-2.0-0.10
-
./configure --prefix=/usr/local/software/mono-1.9
-
make && make install
Monodevelop:
-
cd /usr/src/monodevelop-install
-
wget http://go-mono.com/sources/monodevelop/monodevelop-1.0.tar.bz2
-
tar xjf monodevelop-1.0.tar.bz2
-
cd monodevelop-1.0
-
./configure --prefix=/usr/local/software/mono-1.9
-
make && make install
NAnt
This is optional, but many .NET applications build with it, so it might be worth throwing in there.
-
cd /usr/src/monodevelop-install
-
wget http://downloads.sourceforge.net/nant/nant-0.85-bin.tar.gz
-
tar xzf nant-0.85-bin.tar.gz -C /usr/local/software/mono-1.9
-
echo '#!/bin/bash' > /usr/local/software/mono-1.9/bin/nant
-
echo 'mono /usr/local/software/mono-1.9/nant-0.85/bin/NAnt.exe "$@"' >> /usr/local/software/mono-1.9/bin/nant
-
chmod +x /usr/local/software/mono-1.9/bin/nant
Finished!
You’re done! Run it!
monodevelop
Feel free to contact me if you have any input to add. I will try to add another post for Debian/Ubuntu and possibly Solaris in the future.
- MonoDevelop 1.0 on CentOS 5 and Fedora: Compiling and Installing
- UNBUTU Installing and compiling MatConvNet
- Installing nodejs and npm on CentOS
- Installing Apache, PHP, and MySQL on Fedora Core
- Installing Ruby and Railswith RVM on Fedora 14
- Compiling and Installing the Apache Web Server
- Installing and Testing ON
- Compiling and installing Hadoop 2.4 on 64-bit Oracle Linux 6
- Installing FusionPBX 3.2 on CentOS 6.5 and Mysql
- Installing Python3.4 and the SciPy stack on CentOS
- centos编译 Compiling FFmpeg on CentOS RHEL Fedora
- CentOS - Installing Apache and PHP5
- Compiling and installing RTEMS for the Raspberry Pi
- Installing and Configuring Fedora KVM Virtualization
- XEN - Installing and Configuring Fedora Xen Virtualization
- Install And Configure Open VSwitch On CentOS RHEL Fedora
- How to Install PostgreSQL 9.5 on CentOS/RHEL 7/6/5 and Fedora 23/22
- Installing Sun JDK 5 on Ubuntu 9.10 and 10.04
- Word XP 中目录的编制方法,Word XP 功能键使用大全
- Inside C++ Object Model 之 对象的构造
- linux下Java环境的配置—linux java jdk f jdk-1_5_0_05-linux-i586.bin
- EntLib.com 超大规模电子商务解决方案及系统部署
- 一个消息队列类的实现C++
- MonoDevelop 1.0 on CentOS 5 and Fedora: Compiling and Installing
- 汇编指令与机器码的相互转换
- datawindow赋值与取值
- SQL SERVER 与ACCESS、EXCEL的数据转换
- SQL事务机制
- 看开源如何杀死商业
- 利用博创2410s实验箱进行qt开发经验总结 (原创)
- grails入门学习 内容 列表!
- 生涯