DivideConcept.net

le blog de divide.

Archive pour septembre 2009

Pour mon  nouveau projet, j’ai jeté un coup d’oeil aux différents environnements de dev multiplateforme qui existent actuellement, et après 1 mois d’utilisation, j’ai vraiment été conquis par Qt

Cet environnement réunis vraiment tous les avantage en un seul package:

-Une librairie qui couvre un large champs d’applications possible (interface, reseau, moteur web, opengl, multithreading, son, graphisme 2d, etc etc…)
-Multiplateforme: Windows/Mac/Linux, mais aussi Windows CE, Symbian et Linux embarqué
-Qt Creator, l’environnement de dev multiplateforme qui lui est associé, et qui propose 90% de ce qui rend le codage sous Visual Studio si plaisant (outils de debug, inline completion, designer d’interface, documentation intégré…)
-Licence LPGL (compatible avec une utilisation commerciale et du code propriétaire)

Il propose également un module pour faciliter l’intégration à Visual Studio, mais l’avantage de faire ses projets sous Qt Creator c’est bien évidemment qu’un seul projet peut se compiler indifféremment sur d’autres plateforme sans avoir à reconfigurer quoi que ce soit, et en gardant le même environnement de dev !

La technical preview (alpha) de Qt 4.6 vient d’être publié il y a 2 semaines, et apporte un lot de nouveautés non négligeables:

-Mise à jour du module OpenGL avec support des shaders (GLSL)
-Ajout d’un module audio de bas niveau, entrée et sortie
-Animation d’interfaces simplifiés, moteur graphique optimisé et support pour les interface de Windows 7
-Ajout d’un module pour les calculs 3d (matrices, vecteurs, etc)
-Support du multitouch sur Windows 7
-Qt Creator 1.2.90: selection inline des différentes instances d’une même variable, compilation plus rapide avec MinGw 4.4

Contrairement à la 4.5, il n’existe pas encore d’installeur pour la 4.6 (la version finale doit sortir fin 2009).
Pour installer l’environnement 4.6tp1 sur Windows, voici un step-by-step:

Telecharger qt-4.6.0_tp1-gcc_4.4-x86.7z, qt-4.6_tp1-doc.7z et QtPatcher.7z depuis http://qt.developpez.com/binaires/fr/
et qt-creator-win-opensource-1.2.90-setup.exe depuis le blog Qt

1. Créer le répertoire C:\Qt
2. Décompresser qt-4.6.0_tp1-gcc_4.4-x86.7z dans C:\Qt
3. Décompresser qt-4.6_tp1-doc.7z dans C:\Qt\qt-everywhere-opensource-src-4.6.0-tp1
4. Patcher le repertoire C:\Qt\qt-everywhere-opensource-src-4.6.0-tp1 avec QtPatcher.exe contenu dans QtPatcher.7z
5. Installer qt-creator-win-opensource-1.2.90-setup.exe
6. Lancer Qt Creator, aller dans Tools/Options/Qt4, cliquer sur “+” et rajouter:
Version Name: 4.6tp1
Path: C:\Qt\qt-everywhere-opensource-src-4.6.0-tp1
MinGw Directory: C:\Qt\qtcreator-1.2.90\mingw
7. Cliquer sur “Rebuild”, et mettre Default Qt Version sur “4.6tp1″
8. Dans Help\Documentation, cliquer sur “Add…”
et sélectionner tous les fichiers dans C:\Qt\qt-everywhere-opensource-src-4.6.0-tp1\doc\qch

Pour rajouter une librairie externe non compilée à un projet Qt

1. File/New File or Project…/Projects/Empty Qt4 Project
2. Sélectionner le répertoire contenant le dossier de votre librairie, et donner comme nom de projet le nom du dossier de la librairie, puis terminer la création
3. Clic droit sur le projet de la librairie, Add Existing Files…
4. Sélectionner tous les fichiers .h/.c/.cpp de la librairie et les rajouter
5. Ouvrir le fichier .pro correspondant à la librairie
6. Ajouter à la fin
INCLUDEPATH += $$PWD
DEPENDPATH += $$PWD
(ceci permettra au projet principal de trouver le chemin des fichiers qui composent la librairie)
7. Sauvegarder et fermer le projet de librairie
8. Dans le projet principal, ouvrir le .pro et rajouter la ligne suivante: include(cheminverslefichierprojetdelalibrairie.pro)

Pour rajouter une librairie externe compilée à un projet Qt

1. Ouvrir le fichier .pro du projet
2. Rajouter  INCLUDEPATH += dossierheaderslibrairie
3. Selon qu’il s’agisse d’une librairie compilée pour Windows, Linux ou Mac, rajouter au choix:
win32:LIBS += dossierlibrairiecompiléewindows/fichiercompilé.lib
linux:LIBS += dossierlibrairiecompiléelinux/fichiercompilé.so
macx:LIBS += dossierlibrairiecompiléemac/fichiercompilé.so

Pour afficher le contenu d’un tableau lors du debug

1. Dans Locals and Watcher, clic-droit Insert new watch item, double-clic sur <Edit>
2. S’il s’agit d’un tableau de floats de 100 entrées (par exemple), taper (float[100])*montableau
MAJ: il est aussi possible d’écrire {float[100]}montableau