Prérequis

Vous devez installer les outils de développement de Xcode avec le SDK de X11 (xcode developpement tools) sinon vous risquez d'avoir des erreurs avec libX11.

Ayez aussi une certaine aisance avec l'utilisation du terminal sous Mac OS X

Téléchargement des sources

Sur le site officiel vous avez une liste des différentes version des dépendances de NS2 ainsi que des sources de NS2: http://www.isi.edu/nsnam/ns/ns-build.html

Pour faire simple, nous n'allons ici pas faire une installation dépendance par dépendance, mais nous utiliserons le paquet d'installation all-in-one qui marche très bien (même mieux) pour une installation sur Mac Os X

Téléchargez donc la dernière version de ce paquet disponible ici

Le fichier fait aux alentours de 65 Mo (dans la version dans laquelle je l'ai téléchargée)

Compilation et installation

Pour commencer, décompressez le fichier que vous venez de télécharger dans le répertoire dans lequel vous allez l'installer (ça vous évitera de devoir déplacer le répertoire plus tard). Donc dans le terminal, faites :

[bash]
cd repertoire_de_telechargement
sudo tar xvfz ns-allinone-version.tar.gz /usr/local/ns

Une fois que tout est décompressé à cet endroit, allez-y et lancez la compilation :

[bash]
cd /usr/local/ns
sudo ./install

(Si vous ne voulez pas que la compilation utilise toutes les ressources de votre ordinateur, vous pouvez faire tourner la compilation dans "nice")

Si tout s'est bien passé, voici ce qui doit s'afficher à votre écran :

Please put /usr/local/ns/bin:/usr/local/ns/tcl8.4.14/unix:/usr/local/ns/tk8.4.14/unix
into your PATH environment; so that you'll be able to run itm/tclsh/wish/xgraph.

IMPORTANT NOTICES:

(1) You MUST put /usr/local/ns/otcl-1.13, /usr/local/ns/lib, 
    into your LD_LIBRARY_PATH environment variable.
    If it complains about X libraries, add path to your X libraries 
    into LD_LIBRARY_PATH.
    If you are using csh, you can set it like:
                setenv LD_LIBRARY_PATH <paths>
    If you are using sh, you can set it like:
                export LD_LIBRARY_PATH=<paths>

(2) You MUST put /usr/local/ns/tcl8.4.14/library into your TCL_LIBRARY environmental
    variable. Otherwise ns/nam will complain during startup.


After these steps, you can now run the ns validation suite with
cd ns-2.31; ./validate

For trouble shooting, please first read ns problems page 
http://www.isi.edu/nsnam/ns/ns-problems.html. Also search the ns mailing list archive
for related posts.

Comme vous voyez, l'installation n'est pas terminée. Les programmes sont compilés et marchent, mais ne sont pas encore utilisable car vous devez configurer votre environnement de travail. Pour ça, ouvrez un nouveau terminal et faites vim .bash_profile de manière à ajouter les lignes suivantes au fichier :

[bash]
# Ajoute pour le simulateur NS2
export PATH=$PATH:/usr/local/ns/bin:/usr/local/ns/tcl8.4.14/unix:/usr/local/ns/tk8.4.14/unix
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/ns/otcl-1.13:/usr/local/ns/lib
export TCL_LIBRARY=$TCL_LIBRARY:/usr/local/ns/tcl8.4.14/library

Faites de même pour votre fichier de configuration .bashrc qui doit aussi être modifié en conséquence. Ca dépend du terminal que vous utilisez d'habitude.

Validation et test

C'est fait? Nous pouvons maintenant vérifier si l'installation s'est bien passée. Fermez votre terminal, ouvrez en un nouveau (afin que les variables d'environnement soient prises en compte) et aller dans le répertoire de ns pour effectuer la validation :

[bash]
cd /usr/local/ns/ns-2.31
sudo ./validate

Il faut modifier le nom du répertoire en fonction du numéro de la version que vous avez évidement.

(A nouveau, vous pouvez utiliser "nice" ... cette étape ci peut prendre beaucoup de temps, et si vous voulez avoir accès aux performances de votre ordinateur pendant ce temps ça peut être intéressant).

La validation s'est terminée correctement? Bravo, système de simulation NS-2 est bien installé sur votre ordinateur.

Enjoy !