Comment installer la librairie libQGLViewer sous Linux ?
Qu'est-ce que QGLViewer ?
C'est une librairie écrite en C++ basée sur Qt qui simplifie l'utilisation d'OpenGL, notamment en donnant la possibilité de bouger la caméra dans la scène 3D à l'aide de la souris.
Où trouve-t-on cette librairie ?
Sur le site officiel bien sûr, mais son installation est parfois laborieuse au premier abord, c'est pourquoi je vais détailler la démarche à suivre pour installer cette librairie sous Linux.
Avant de commencer
1. Avoir qt4-qmake d'installé
C'est un outil générateur de Makefile qui nous sera utile pour compiler nos fichiers. Pour savoir si celui-ci est installé tapez simplement la commande suivante dans un terminal :
qmake-qt4
Si la sortie est :
Usage: qmake-qt4 [mode] [options] [files]
C'est qu'il est déjà installé. Le cas échéant l'installer :
- via votre gestionnaire de paquet (en ce qui me concerne la logithèque Ubuntu, ou sinon Synaptic, Aptitude, etc suivant votre OS)
- ou manuellement en téléchargeant le fichier .deb sur internet, par exemple sous Ubuntu vous pouvez le récupérer à cette adresse.
Ensuite pour installer le .deb il vous suffit de taper la commande suivante à l'endroit où se trouve votre fichier .deb :
sudo dpkg -i *.deb
2. Avoir OpenGL d'installé
En général il est présent sur tous les ordinateurs récents, pour s'en assurer tapez la commande suivante dans un terminal :
glxinfo
Si cela vous affiche plein d'information c'est qu'OpenGL est installé, sinon on vous proposera d'installer le package mesa-utils, ce que vous allez faire en tapant :
sudo apt-get install mesa-utils
Et voilà nous allons pouvoir en venir à l'installation de QGLViewer proprement dîtes.
Installation de libQGLViewer
1. Première solution (recommandée) : installation de libqglviewer-qt4
- Utilisez votre gestionnaire de paquet préféré pour installer libqglviewer-qt4-dev et libqglviewer-qt4-2
- ou manuellement en téléchargeant les fichiers .deb correspondant sur internet. Par exemple si vous êtes sur Ubuntu téléchargez par exemple les fichiers libqglviewer-dev-common_2.3.4-4ubuntu1_all.deb et libqglviewer-qt4-2_2.3.4-4ubuntu1_i386.deb et installez les comme tout à l'heure grâce à :
sudo dpkg -i *.deb
Bien souvent les librairies installées par l'une ou l'autre des méthodes (par gestionnaire de paquets ou manuellement) se situent au mauvais endroit. Il va donc falloir les déplacer, et pour cela il faut avant tout les localiser sur le disque. Pour cela placez vous à la racine :
cd /
Puis on va faire une recherche de tous les fichiers comportant le nom "QGLViewer" :
sudo find . -type f -exec grep 'QGLViewer' {} \;
En sortie identifiez la ligne qui spécifie l'emplacement du fichier libqglviewer-qt4.so, pour ma part la ligne correspondante est :
Fichier binaire ./x86_64-linux-gnu/libqglviewer-qt4.so concordant
Enfin pour installer la librairie au bon endroit on va simplement faire un lien symbolique :
sudo ln -s libqglviewer-qt4.so /usr/lib/libQGLViewer.so
remarque : si le fichier libQGLViewer.so existait déjà dans /usr/lib/ supprimez le (via rm -f libQGLViewer.so) avant d'effectuer le lien symbolique.
Si tout s'est bien déroulé, rendez-vous directement à la section suivante "Tester QGLViewer". Si le test se solde par un échec revenez ici essayer la deuxième alternative.
2. Deuxième solution : installer libQGLViewer et Glut
Commencer par suivre les instructions du site officiel que je récapitule ci-après :
Télécharger la dernière version du package (à ce jour 2.3.17) et l'extraire où vous voulez
tar -xzf libQGLViewer-2.3.17.tar.gz
Personnellement le dossier se trouve ici :
/home/kevin/Téléchargements/libQGLViewer-2.3.17
Se placer dans le dossier QGLViewer se trouvant à l'intérieur :
cd libQGLViewer-2.3.17/QGLViewer
puis tapez les commandes suivantes :
qmake sudo make install
Si tout se passe bien vous devriez avoir le(s) fichier(s) libQGLViewer.so dans /usr/lib.
remarque : avec cette version vous aurez besoin de glut comme librairie à la compilation.
Pour installer glut vous pouvez le faire encore une fois via votre gestionnaire de paquet, soit par ligne de commande :
sudo apt-get install freeglut3-dev sudo apt-get install libglut3-dev
Tester QGLViewer
Nous allons tenter de compiler et d'exécuter un exemple minimaliste, téléchargez le.
Extraire le fichier .tar.gz et placez vous dans le dossier simpleViewer :
tar -xzf simpleViewer.tar.gz cd simpleViewer
La première chose à faire est d'éditer le fichier viewer.pro qui décrit comment va être généré le Makefile. Ouvrez ce fichier avec votre éditeur préféré :
emacs viewer.pro &
Le fichier ressemble à cela :
Les 2 champs qui nous intéressent sont :
- INCLUDEPATH : Ici vous devez remplacer la ligne par le chemin exact vers votre dossier libQGLViewer !
- LIBS : Ce champ spécifie les librairies utilisées pour la compilation, si vous avez installer QGLViewer avec la première méthode (recommandée) alors ne touchez rien par défaut c'est libqglviewer-qt4 qui est utilisé dans ce .pro, sinon si vous avez utilisez la deuxième méthode alors il va falloir utiliser -lQGLViewer et glut (-lGL -lGLU), pour cela commenter le premier LIBS et décommenter le second, en remplaçant évidemment le chemin par votre chemin vers le dossier libQGLViewer/QGLViewer !
Enregistrez les modifications, puis dans un terminal (toujours dans le dossier simpleViewer où normalement vous vous trouvez) tapez :
qmake-qt4
Cela aura pour effet de vous créer un fichier Makefile. Puis pour compiler tapez simplement :
make
Ce qui produira un fichier exécutable simpleViewer que vous pouvez exécutez par :
./simpleViewer
Si tout s'est bien passé vous devriez voir une fenêtre apparaître avec une jolie spirale en 3D que vous pouvez faire bouger à l'aide de la souris :
Et voilà votre librairie QGLViewer est installée et opérationnelle !