mardi 7 juillet 2020

Installation de Qt/C++ 5.9

Avec Qt cela commence toujours par la maîtrise de l'installation, en effet ce n'est pas simple d'installer correctement Qt et son compilateur C++ car ils dépendent terriblement  de votre plateforme.

Alors aujourd'hui, j'ai installé la version 5.9 de Qt qu'est ce que j'ai sur ma machine ? Déjà le Qt Creator n'est plus dépendant de la version on le retrouve à un niveau supérieur.

Je souhaite vérifier mon installation en exécutant un nouveau projet exemple proposé par Qt 5.9 : Chart Themes Example. J'ai auparavant installé sur ma machine une version de Microsoft Visual Studio.

Qt/C++ Tools 

Comme sur tout environnement de développement, vérifier son installation, c'est vérifier que l'on peut exécuter un projet exemple et que l'on peut mettre un point d'arrêt et déboguer en pas à pas.

Alors allons y.

Qt/C++ - Qt Creator - Page d'accueil

Je choisie le projet "Chart Themes Example". La première étape de configuration du projet me propose comme Kit de développement celui que j'ai installé MSVC2013_64bit c'est bien parti.

Qt/C++ - Configuration du Projet

Débogue j'ouvre le fichier main.cpp et je positionne un point d'arrêt.

QT/C++ Placer un point d'arrêt

Je clique sur l'icône tout en bas à gauche de mon IDE QT Creator.

Lancer l'exécution de mon projet en Debug

Je vérifie l'exécution de mon nouveau projet :

L'exécution de mon projet s'est arrêtée sur le point d'arrêt.

Je continue l'exécution, la fenêtre de ma nouvelle application s'ouvre. Je choisie un thème.

Exécution du projet "Chart Themes Example"

Voilà, je suis prêt à développer avec Qt 5.9 !

Et pour tout autre problème d'installation avec Qt, je vous propose le site très bien fait de :

guillaumebelz.github.io

Des erreurs, encore des erreurs

Et bien oui j'ai encore un souci lorsque je lance mon Qt Creator, j'ai la boite suivante :

Au lancement de Qt Creator

Alors de quoi s'agit-il ? L'initialisation de l'extension a échoué: Cannot create OpenGL context. Je pense que c'est lié à l'environnement de ma machine de développement ...

Un problème de configuration de Qt ? 


Menu Aide -> A propos des Plugins.

Plugins Installés mais qui ne fonctionne pas sur cette machine

Je décoche les deux cases, Qt me demande de redémarrer et ça y est ça fonctionne.

Don't forget to go to the beach it's good for your health ;)

Qt en 2020 on en est où ?

Je reprends un peu mon Qt que je l'avais laissé quelques années auparavant. Alors en 2020 Qt, on en est où ? Je repasse rapidement par le site de référence et je me rends compte que je ne suis pas perdu c'est typiquement le même site, Qt c'est d'une complexité peut commune !

Qt - One framework, One Code base, Any plateforme

Non, en effet, Qt n'est pas grand, Qt est énorme. Et l'on ne peut pas imaginer de prendre en main ce framework ni cet environnent de développement en 1 jour.

Alors si je m'étais arrêté à la version de Qt/C++ 5.4 mais que s'est-il passé depuis ...

Qt - New Features in Qt 5.9

Je prends quelques notes.

Qt Core

    QProcessEnvironment is now available on iOS, tvOS, watchOS, and VxWorks.

Multiplateforme c'est le coeur c'est la clef cela a un prix le prix de complexité mais une récompense celle de pouvoir déployer sur n'importe qu'elle machine ... à peu de choses prêt.

Qt GUI

    QPainter's GL engine is now functional with core profile OpenGL contexts as well.

La librairie grapqhique c'est le nerf de la guerre c'est elle qui permet au logiciels d'afficher sur les écrans de fantastiques simulations.

Qt QML

    Rewritten garbage collector to provide better memory consumption and improved, more predictable performance for JavaScript code

Il me semble que QML c'est ce qui permet d'écrire du Web avec Qt.

Qt Charts

    Added support for minor grid lines for logarithmic axes

Qt SerialBus

Added plugin to support SYS-TEC electronic CAN adapters on Windows

J'ai beaucoup travaillé avec avec le Port Série. Il semble qu'il y a là une amélioration à noter, ce serait sans doute plus facile aujourd'hui, à l'époque j'ai écris un Driver en C puis je l'ai utilisé avec Qt :


Voilà, je vous laisse découvrir le reste des améliorations de la version Qt 5.9. Parcourir cette liste des améliorations de Qt nous laisse entrevoir l'étendu de Qt, non ce n'est pas grand, c'est gigantesque.