Monodevelop

NOTE: The information on this page is dated. Monodevelop is at release 2.8.8.4 and has matured quite a bit since this writing.

= What is monodevelop? = Most of us already know that it is more convenient to view/edit the OpenSimulator source in Visual Studio 2005 C# Express on Windows. However, for those of us who don't have access to Windows, monodevelop is the most suitable equivalent and remains one of the best candidate for .NET programming on Linux systems. If you are planning to work with the source on any Linux system, monodevelop and kdevelop are both capable of viewing/editing C# solutions/projects. However, support for monodevelop is somewhat limited and it does not have the same features as VS2005 C# Express. If you have an available Windows system - use Visual Studio.


 * Lastest Release: monodevelop 2.0
 * Official Site: MonoDevelop official site

From Package
For Debian-based Linux distributions, you can install the monodevelop package via the following command in terminal:

sudo aptitude install monodevelop

If your sources do not have monodevelop, you can install using the following (from Mono Project)

You can install Mono 1.9.1 and MonoDevelop 1.0 by using apt or aptitude from the debian.meebey.net/etch-backports repository. This repository is driven by the official package maintainer of the Debian Mono packages. This repository is also known to work for Ubuntu/Gutsy.

Add this line to your /etc/apt/sources.list file:

deb http://debian.meebey.net/etch-backports /

And then install or upgrade your Mono and MonoDevelop using:

apt-get update && apt-get dist-upgrade

or

apt-get update && apt-get install monodevelop

For Fedora 9, you can install the monodevelop package via the following command in terminal (as root):

yum install monodevelop

Please be aware that monodevelop has a slew of dependencies! Also, if you are interested in additional programming plugins, you might find them in your distribution's repository. If they are not there, you can also add them in the monodevelop GUI under the Add-in Manager in Tools.

From Source
Depending on your distribution of Linux, you may need to install monodevelop from source. However, it is important that you check the main site for packages. Both the available packages and sources can be found at http://www.monodevelop.com/Download (the official download site). In order to install monodevelop from source, download the appropriate file and extract the contents to a folder of your choosing. After you have extracted the files, execute the following command:

 ./configure && make && make install 

There are numerous problems that may occur during this process (as with any build), according to public forums. We will work to keep an updated archive of fixes as they are discovered. Anyone who is familiar with these issues may also amend this document openly.

monodevelop 2.0
Monodevelop 2.0 works and will compile OpenSim, which will then run under mono 2.0. However, it is a tremendous hassle to build. If you need monodevelop 2.0 you should look after Ubuntu 9.04 or OpenSuse.

In a Virtual Machine
Another option, if you don't have a Mono environment set up, is to download the pre-configured VMware virtual machine from http://www.mono-project.com/VMware_Image. It runs OpenSuSE, and is maintained by Novell (owners of SuSE). It includes monodevelop, so you can try it out without fiddling with your current environment. If you do not have VMware installed, you can download a free "VMWare Player" -- for Windows and Linux (32- and 64-bit) -- from http://vmware.com/products/player/.

Running monodevelop
Running monodevelop is simple. Open your terminal and run monodevelop. However, you should keep in mind that, if your OpenSimulator directory is owned by root because you installed it with the sudo command, you might want to run monodevelop as root. This will allow you to save your files without any annoying write-errors.

It is worth remembering that running OpenSimulator as root is a really, really, really, really bad idea and you should just chown it to your user account instead of following the above caveat.

Creating a workspace
To create a projectfile, you must run the prebuild.sh/.bat, and nant. This creates opensim.sln, which you can import into monoDevelop.

Error: I can't open the solution?
One common error you might encounter when attempting to open the OpenSimulator source is:

... can not be saved, because the source file can not be read.</tt>

Answer: Native support for Visual Studio 2005 solutions/projects is required to view/edit the OpenSimulator source. You will need to obtain version 0.13 or higher. Please be sure to check your repository for the latest release. In some cases, the provided version may be too old. For Ubuntu users, the feisty repository contains version 0.12 of monodevelop. You will need to install a newer version from source or find another repository to update the package.

Ubuntu Users: Update to Version 0.13
The following repository contains Ubuntu updates for mono and monodevelop:

deb http://www.viraptor.info/repo feisty-custombackports contrib

You can add this source under the Third-Party Software tab in your Software Source manager under System>Administration. After it has been added, you can run your Synaptic Package Manager to update your files manually if you desire. You may be prompted to update through the auto-updater. You can also manually add this repository in your terminal by adding the address to the bottom of /etc/apt/sources.list and executing the following command:

sudo aptitude update && sudo aptitude upgrade</tt>

The Future of monodevelop
Given some time, monodevelop could prove useful in the future development of OpenSimulator. However, more research must be done on the program itself to determine this. This is the primary reason that I created this entry and I'm hoping for more contributions. Some of us are working to integrate more features into monodevelop, but for now, VS2005 is the optimal choice.


 * I hope this documents helps. Please feel free to update/modify this entry as needed.
 * Note: I have been using Monodevelop 0.19 to work with OpenSimulator without any major problems! -- Matth