Salut, tout le monde, j'ai une application dévceloppée avec Qt3. Je désire la porter à Qt4. Est ce que quelqu'un pourrait m'indiquer comment je dois procéder et quels sont les changements à apporter.
Meilleures salutations.
Salut, tout le monde, j'ai une application dévceloppée avec Qt3. Je désire la porter à Qt4. Est ce que quelqu'un pourrait m'indiquer comment je dois procéder et quels sont les changements à apporter.
Meilleures salutations.
T'es-tu renseigné sur cet outil : http://qt.developpez.com/doc/latest/qt3to4.html ?
Il est officiel donc a priori tu devrais pouvoir porter la majorité de ton code.
Tu as rencontré un problème ?
Pou l'instant je suis en train de me documenter à travers les différents doc de trolletech et ce afin de comprendre ce qui a changé et s'il y a des spécificités particulières.
Donc je ne me suis pas encore mis à la migration réelle. Merci de votre aide.
Juste pour savoir si j'étais le seul à expérimenter des problèmes de migration de qt3 vers qt4, et ce malgré l'utilisation des outils proposés par TrollTech.
J'ai notamment des soucis avec mes fichiers ui, je les ai convertis en 4 facilement grâce à uic3 (on peut maintenant les éditer sous Designer 4), mais si je veux compiler, j'ai droit à un joli :
bref je planche dessus depuis plusieurs jours, j'avais également passé tout le dossier à la moulinette
Code : Sélectionner tout - Visualiser dans une fenêtre à part uic: File generated with too recent version of Qt Designer (4.0 vs. 3.3.8b)et même corrigé les incompatibilités et erreurs à la main.Rien n'y fait, pour qt, mes ui sont soit trop vieux soit trop récents.
Code : Sélectionner tout - Visualiser dans une fenêtre à part qt3to4
Si quelqu'un a également rencontré ce genre de difficulté, ses conseils et remarques sont les bienvenues
merci
Salut,
Ce n'est pas un problème de portage mais d'installation Le problème est que tu as les packages de dev de Qt 3 *et* Qt 4. Selon ta plateforme plusieurs solutions possible.
De façon générale, il faudrait que tu renommes le qmake de Qt 4 en qmake-qt4 (par exemple), pour être sûr d'utiliser le bon.
Et quand tu lances le make, il appelle le bon uic ?
Non justement. On ne connaît toujours pas la plateforme que tu utilises, ni comment tu as installé Qt 4.
Bon je réveille les morts, mais ça servira peut-être à quelqu'un.
L'outil qt3to4 sert à migrer les sources, .cpp et .h.
Il va lire un fichier .xml contenant les règles de conversions.
A savoir, l'ancienne classe QtListView deviendra Q3ListView par exemple.
Pour migrer un .ui, par contre, il faut utiliser l'outil uic3.
Cependant, les icones ne sont plus pris en compte dans le source. Il faut ajouter l'option extract pour créer un fichier .qrc (ressource Qt) qui créera un dossier 'images' contenant les icones et pixmaps de l'ancien .ui.
Code : Sélectionner tout - Visualiser dans une fenêtre à part uic3 -convert Old.ui > New.ui
Mais ce n'est pas tout !
Code : Sélectionner tout - Visualiser dans une fenêtre à part uic3 -convert Old.ui > New.ui -extract fichier.qrc
Cette extraction ne permet pas de lier les icônes fraichement extraits au .ui généré. Il est possible qu'il faille, à la mimine, se retaper les jonctions entre le bouton et l'icone en choisissant 'ressource' au lieu de 'image' dans la property 'icon' ou 'pixmap'.
Enfin, on peut utiliser l'outil uic-qt4 pour générer le fichier header (.h) à partir du New.ui
Je suis en train de bosser la dessus pour le taf.
Code : Sélectionner tout - Visualiser dans une fenêtre à part uic-qt4 New.ui > header.h
Tout les problèmes ne sont pas réglés loin de là mais je partage mes découvertes.
Bonne journée.
Partager