1

I am quite new to linux. I have to install Mono on a linux machine from souce code. I know the general method: read-instructions, install-dependencies, ./configure, make, make install. However this approach doesn't fit into the general Ubuntu package management routine. Other programs I install from .debs won't be able to notice the version of Mono. Also I can't remove Mono using standard Ubuntu package management tools.

Is there an easy solution? I have seen that Ubuntu actually has several separate packages for the Mono project. Should I build packages from Mono? How can I follow the same conventions as the ubuntu packagers? Where should I look for info on packaging? Can you give step by step instructions?

Thanks!

5 Answers 5

2

You want to use the personal package archives on launchpad.net - there are very up to date versions of lots of different software packages in different PPAs.

If you want the really bleeding edge mono, then there is a mono-testing PPA with mono 2.4 at https://launchpad.net/~mono-testing/+archive/ppa

To install packages from a PPA, and get updates for them, follow these instructions. Once you have done that you should just be able to do

$ sudo aptitude update
$ sudo aptitude upgrade
1

The mono-cli team hasn't packaged the latest 2.6 version yet. So there are no packages to install. Further bad news is it's not coming in 10.04 (Lucid) either. So you will have to install from source, or package it yourself. Do not attempt the later, it's not beginner stuff at all. Mono packaging is one of the most complex collection of packages in debian/ubuntu. So install from source in a parallel environment and you will not break your distro supplied mono. You can then pick and choose which mono to use to run/build your apps. Get the script from my blog to do it all for you...

wget https://github.com/firegrass/mono-installer-script/raw/master/mono_build.sh
chmod +x mono_build.sh
./mono_build.sh

Then, for example, you can do this...

mono-2.6 banshee-1
mono-2.6 mono -V
mono-2.6 your-app
0

The closest solution to easy is to build a new package. apt-get source the source and replace the old upstream tarball with a checkout. bump the version as appropriate, then rebuild, install, and hope you didn't mess anything else up. Note that anything that needed a specific library version will be hosed, and usually replacing something like mono requires rebuilding everything it depends on.

0

Is there an easy solution?

Before you spend too much time building something yourself look around and check the packages in Debian SID, and Launchpad. Check out to see if the mono project already has the scripts in their repository for building a .deb package. It is possible that there is already a development version someone is working on that is newer.

If the version you want isn't available already check with the Debian/Ubuntu maintainers for that package and see if they are working on building it. Try and find a way for you to help the current maintainers. If you help them, then you might be able to avoid having to always maintain your package.

If the version you need is already available in the unstable branch of Debian or Ubuntu, then you may be able to simply download the source package recompile it for version of the distribution you are currently running.

How can I follow the same conventions as the Ubuntu packagers?

If you are interested in this you probably should start with the Debian New Maintainers' Guide.

Download the source package for mono to get an idea about how the package is currently built.

Can you give step by step instructions?

Not really, each program is different, and I have no experience with mono.

0

The easy solution to install packages in ubuntu & as well as debian is

1.apt-get install ( Installation Of Packages)

2.apt-cache search (Search for package)

  1. apt-cache policy ( To search installed package)

Try using this..:)

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .