Development: Getting Started

From $1
    Table of contents

    It's relatively easy to get started working on MonoDevelop, but this page aims to make it easier to get off the ground.

    Setting up an Environment

    MonoDevelop doesn't require the very latest version of Mono, and we specifically depend on GTK+ features no later that GTK+ 2.8. That said, using a recent release of Mono and GTK# is likely to improve reliability and performance.

    It is strongly recommended to use a packaged release of Mono for your distribution, as it is very easy to mix up conflicting Mono versions if installing from source. If you must install Mono from source, set up a Parallel Mono Environment.

    Make sure you have git installed, and check MonoDevelop out from git.

    Building and Installing

    Open a terminal in the top-level MonoDevelop directory, and run

    ./configure --profile=core

    It may fail because of missing dependencies; install them, and re-run the command.

    There are a number of other profiles that can be used; the command

    ./configure --help

    explains how they are used.

    Next, use


    to build MonoDevelop.

    Since you're working on the development version, it's best not to install it; instead, you can use

    make run

    to run it without installing it.

    It is a good idea to keep separate copies for using and developing.

    If you do install MonoDevelop, it is best to run the current version uninstalled, to make sure it works, before installing it.

    Working on MonoDevelop

    Before hacking on MonoDevelop, don't be afraid to ask questions on #monodevelop IRC or MonoDevelop mailing list. People will be able to give you pointer about where to start and how best to approach the problems your are trying to solve. There are also number of Articles on the MonoDevelop architecture and on implementing addins.

    The MonoDevelop solution can be opened from MonoDevelop, and builds can be preformed form within MonoDevelop. Indeed, some parts of the build (such as Stetic code generation) must be performed within MD. However, the modified MonoDevelop must be run from a terminal with

    make run

    You should follow our contribution rules, for code style and licensing. Please add ChangeLog entries for all of your changes. There's one for each assembly.

    After you have made your changes, produce a diff

    svn diff ChangeLog changedfile1.cs changedfile2.cs > some_diff_file.diff

    and attach your patch to an issue in or send it to the MonoDevelop mailing list.

    Troubleshooting the Build

    If the MonoDevelop build fails, there are a number of possible fixes.

    If the build commands failed, try a clean rebuild:

    make clean; make

    and fix any that are in conflict, or delete any that have changed unnecessarily.

    If the build system failed, check for changed files and re-run the configure script.

    Tag page
    • No tags

    Files (0)

    Viewing 1 of 1 comments: view all
    I got an error with NuGet in MonoDevelop.AspNet on Ubuntu 14.04 LTS.

    In IRC, akoeplinger said to do mozroots --import --sync. That worked.
    Posted 20:39, 22 Jul 2014
    Viewing 1 of 1 comments: view all
    You must login to post a comment.
    Page last modified 19:52, 27 Feb 2012 by M.j.hutchinson