Guide: Compiler Marionnet sur une distribution Red-Hat-like

Installez les paquets suivant ainsi que leurs dépendances avec le gestionnaire des paquets de votre distribution — vous pouvez utiliser drakrpm sur Mandriva par exemple:

gcc bzr vde2 x11-server-xephyr libglade2.0_0-devel libncurses5-devel uml-utilities bridge-utils graphviz make gettext konsole gnome-terminal xterm

Travaillons directement en tant qu'utilisateur root, c'est plus simple:

su -

Le mot de passe Root vous sera demandé.

Nous allons travailler avec les sources, dans un dossier temporaire:

mkdir ~/tmp || true

Mandriva fournit quelques paquets OCaml, mais pas tout ce dont nous avons besoin. Donc, plutôt que de combler les trous, nous allons ignorer les paquets et compiler tout OCaml depuis les sources.

Téléchargez, compilez et installez OCaml:

cd ~/tmp
wget http://caml.inria.fr/pub/distrib/ocaml-3.11/ocaml-3.11.0.tar.bz2
tar xfv ocaml-3.11.0.tar.bz2
cd ocaml-3.11.0
./configure && make world.opt && make install && make installopt
cd /usr/local/include
ln -s ~/tmp/ocaml-3.11.0/byterun caml

Téléchargez, compilez et installez lablgtk2:

cd ~/tmp
wget http://wwwfun.kurims.kyoto-u.ac.jp/soft/olabl/dist/lablgtk-2.12.0.tar.gz
tar xfv lablgtk-2.12.0.tar.gz
cd lablgtk-2.12.0
./configure --with-threads=yes --with-glade && make && make opt && make install

Téléchargez, compilez et installez la dernière version de ocamlbricks:

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

Téléchargez, compilez et installez la dernière version de Marionnet:

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

Téléchargez et installez les fichiers systèmes des machines et routeurs virtuels, vous aurez besoin d'un peu d'espace libre sur votre disque dur pour cette étape:

cd /usr/local/share/marionnet/
wget http://www.marionnet.org/download/snapshots/stuff/filesystems-most-recent.tar.bz2
tar xfv filesystems-most-recent.tar.bz2
rm -f filesystems-most-recent.tar.bz2

Téléchargez et installez le noyau UML:

cd /usr/local/share/marionnet/
wget http://www.marionnet.org/download/snapshots/stuff/uml-kernel-binaries-most-recent.tar.bz2
tar xfv uml-kernel-binaries-most-recent.tar.bz2
rm -f uml-kernel-binaries-most-recent.tar.bz2

Configuration après l'installation

Une fois l'étape précédente terminée, Marionnet fonctionnera correctement, mais il y a quelques fonctionnalités optionnelles qui demandent à être configurées. Si vous voulez un accès internet sur les machines virtuelles, vous devez créer un pont dans /etc/sysconfig/network-scripts/ifcfg-br0 comme ci-dessous (vous aurez peut-être remplacer dhcp par static et ajouter une adresse statique):

DEVICE=br0
BOOTPROTO=dhcp
ONBOOT=yes
TYPE=Bridge

Ensuite, vous devez ajouter une carte ethernet au pont (ne fonctionne pas encore pour le Wifi), ceci se fait en ajoutant la ligne suivante à la fin de /etc/sysconfig/network-scripts/ifcfg-eth0

BRIDGE=br0

À partir de maintenant, votre machine démarrera avec le pont en place, et donc le démon Marionnet pourra l'utiliser.

Nous avons aussi tout une page pour configuration de marionnet après installation.