Bonjour à tous,
Je souhaiterai savoir si c'est possible d'utiliser des librairies C tel la SDL, GTK ou OpenGL avec Matlab ?
Bonjour à tous,
Je souhaiterai savoir si c'est possible d'utiliser des librairies C tel la SDL, GTK ou OpenGL avec Matlab ?
Oui c'est possible via un fichier Mex.
Sur quel(s) système(s) d'exploitation le code doit-il fonctionner ?
Le code doit fonctionner sur Linux Ubuntu la dernière version.
J'ai pas encore créé le Mex-File, j'ai simplement fait un simple code C de test
dans lequel j'utilise la librairie SDL.
Pour la SDL :
Vérifie que les deux paquets suivants sont installés :
- libsdl1.2debian
- libsdl1.2-dev
Ajoute #include "SDL/SDL.h" au début du fichier MEX
Compile comme ceci (au chemin de la bibliothèque près) :
Pour OpenGL :
Code : Sélectionner tout - Visualiser dans une fenêtre à part mex -I/usr/include -L/usr/lib/x86_64-linux-gnu -lSDL mexavecSDL.c
Vérifie que les deux paquets suivants sont installés :
- libgl1_mesa-dev
- mesa-common-dev
Ajoute #include "gl/GL.h" au début du fichier MEX
Compile comme ceci (au chemin de la bibliothèque près) :
Pour SDL + OpenGL
Code : Sélectionner tout - Visualiser dans une fenêtre à part mex -I/usr/include -L/usr/lib/x86_64-linux-gnu -lGL mexavecOpenGL.c
Ajoute #include "SDL/SDL.h" et #include "gl/GL.h" et au début du fichier MEX
Compile comme ceci (au chemin des bibliothèques près) :
PS : tu trouveras le Mex exemple SDLgears (tiré du site http://www.libsdl.org/opengl/index.php) en pièce jointe :
Code : Sélectionner tout - Visualiser dans une fenêtre à part mex -I/usr/include -L/usr/lib/x86_64-linux-gnu -lSDL -lGL mexavecSDLetOpenGL.c
Code : Sélectionner tout - Visualiser dans une fenêtre à part mex -I/usr/include -L/usr/lib/x86_64-linux-gnu -lSDL -lGL SDLgears.c
Pour GTK+ :
Vérifie que le paquet libgtk2.0-dev est bien installé.
Ajoute #include "gtk/gtk.h" au début du fichier Mex.
Pour compiler, il est plus facile de créer un fichier spécifique mexopts-gtk.sh à partir du fichier mexopts.sh par défaut en ajoutant les lignes suivantes dans le bloc correspondant à ton architecture :
et
Code : Sélectionner tout - Visualiser dans une fenêtre à part CFLAGS="$CFLAGS `pkg-config --cflags gtk+-2.0`"
Tu places ce fichier au même niveau que le fichier Mex et tu compiles comme ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part CLIBS="$CLIBS `pkg-config --libs gtk+-2.0`
Je joins un fichier test issu du livre Foundations of GTK+ Development
Code : Sélectionner tout - Visualiser dans une fenêtre à part mex -f ./mexopts-gtk.sh mexavecGTK.c
Partager