Azeaz
Sous linux
Gualtieri Yoann
Maladot Anthony
Installation de Raydium
Pour réaliser cette installation, il a tout d’abord été nécessaire d’installer certaines librairies : libglut3-dev, freeglut3-dev, libalut0, libalut-dev, libopenal0a, libopenal-dev, libvorbis0a, libvorbis-dev, libogg0, libogg-dev, bison, flex, libcurl-dev, libxml2-dev, libglew-dev, libjpeg62-dev, libxinerama-dev
Puis de configurer Raydium (commande "./configure").
Ensuite nous devions inclure « raydium/index.c »dans le fichier main.c du simulateur et dans les headers:
#include "raydium/index.c"
La compilation s’effectue grâce au script odyncomp.sh fourni avec Raydium et prend en argument le fichier main.c: ./odyncomp.sh main.c
Ce script empêchait donc l’utilisation d’un Makefile, il nous a donc fallu corriger les headers du programme.
Correction des headers
Correction des inclusions
Sans Makefile rien ne permet au programme de connaitre l’emplacement des fichiers.c, ce qui entraîne une impossibilité de compilation. Nous avons dû inclure ces fichiers dans chaque header. Les gardiens sont aussi nécessaires pour empêcher les inclusions multiples.
Voici une comparaison sur le fichier gestionLog.h : (les fichiers gestionDrone.h, gestionPhp.h, gestionVideo.h et vlib_main.h sont redéfinis de la même manière)
Avant: void open_log(); void enregistrement_fichier(); void open_fc(); void enregistrement_fc();
Après:
#ifndef _GESTION_LOG_H
#define _GESTION_LOG_H
#include "raydium/index.c"
#include "constantes.h"
void open_log(); void enregistrement_fichier(); void open_fc(); void enregistrement_fc();
#include "gestionLog.c"
#endif /*_GESTION_LOG_H*/
Changement des “librairies”
Certaines fonctions utilisent des structures ou font appel à d’autres fonctions provenant des librairies du système.
C’est principalement le cas pour les fonctions d’ardrone_socket.
Il nous a donc fallu un équivalent à la librairie <winsock2.h>