Compiling Marionnet: HOWTO for debian-like distributions

Let's do everything as root; it's a little simpler:

sudo su

You will be prompted for a password.

We can install some of the dependencies from packages:

apt-get update
apt-get install -y ocaml-native-compilers ocaml-compiler-libs camlp4\* \
                   liblablgtk2-gnome-ocaml-dev graphviz uml-utilities \
                   bridge-utils vde2 gcc xserver-xephyr make gettext xterm bzr

These are needed for installing VDE2 from sources, which may or may not be needed (Ubuntu packages for VDE2 look oldish; they might work, but compiling the most recent version won't hurt):

apt-get install -y g++ subversion autoconf automake libtool

Build a temporary directory for the source part:

mkdir ~/tmp

Now you have to install VDE2. You can either use a package or compile it from sources. Compiling from sources might not be needed depending on the distribution, but the ubuntu packages I've seen look oldish.

Here is how to install VDE2 from a package:

apt-get install -y vde2

A user reported that this is also needed on ubuntu 9.04:

apt-get instsall -y libvdeplug2

This is how to compile VDE from sources:

cd ~/tmp
svn co vde_svn
cd vde_svn
mkdir m4 # This was needed the last time I tried, on 2009-05-29
autoreconf -fi
./configure && make && make install

Download, compile and install the latest version of ocamlbricks:

cd ~/tmp
bzr get --verbose lp:ocamlbricks/0.90.x ocamlbricks
cd ~/tmp/ocamlbricks
make && make install

Download, compile and install the latest version of marionnet:

cd ~/tmp
bzr get --verbose lp:marionnet/0.90.x marionnet
cd ~/tmp/marionnet
make && make install

Download and install virtual machine (and router) filesystems; you will need some free disk space for this step:

cd /usr/local/share/marionnet/
tar xfv filesystems-most-recent.tar.bz2
rm -f filesystems-most-recent.tar.bz2

Download and install UML kernels:

cd /usr/local/share/marionnet/
tar xfv uml-kernel-binaries-most-recent.tar.bz2
rm -f uml-kernel-binaries-most-recent.tar.bz2

Post-installation setup

Marionnet will work after the steps above, but there are a couple of optional features which need some system configuration. We have a whole page about Marionnet post-installation setup.