mardi 31 janvier 2017

Qt Installation - Qt 5.8.0 Setup

Vous souhaitez installer Qt 5.8.0 que se passera t-il lorsque vous cliquerez sur le bouton de l'install ? Regardons cela ensemble. Pour commencer, ce n'est pas compliqué moi j'ai entièrement désinstallé la version précédente avant d'installer la version 5.8.0.

Une fois le bouton "View All Downloads" trouvé sur le site Qt Download Open Source et l’exécutable :

qt-opensource-windows-x86-msvc2013_64-5.8.0.exe

téléchargé, voici ce que j'ai coché au moment de l'install :

Installation de Qt 5.8.0 - 1

Cela ne ressemble en rien à l'installation de version 5.4 !

Installation de Qt 5.8.0 - 2

Au bout de dix bonnes longues minutes :

Installation de Qt 5.8.0 - 3

On voit que la procédure colle tout dans le répertoire C:\Qt\Qt5.8.0 donc rien n'est utiliser ou n'est en commun avec une version précédente de Qt.

Une fois le lancement de Qt Creator effectué, on peut voir de nouveaux exemples :

Exemple Qt/C++ dans Qt Creator

Les nouveautés de Qt 5 sont le Qt 3D, le QML et le Qt Quick.

Qt Encore des erreurs

Qt 5.8.0 ne fonctionne absolument pas sur une machine virtuelle Oracle VM ce qui est vraiment dommage ! L'écran de Qt Creator est tout noir et se fige. Encore un problème de driver graphique (OpenGL ou DirectX) !

Mise à jour juin 2020
Voici un autre bon site pour prendre en main l'installation de Qt :

guillaumebelz.github.io - Installation et premiers pas avec Qt 5.14

Voyez que ce n'est pas si simple, notamment une chose que j'ai oubliée c'est qu'il faut installer un compilateur C++ et là une petite phrase bien sympathique : "Qt ne supporte pas encore Clang sur Windows". Donc vous devez choisir un autre compilateur ...

mercredi 18 janvier 2017

Utiliser Qt/C++ pour développer une Application Web est-ce possbile ?

Est-il possible de développer une application web avec Qt/C++ ? C'est une bonne question en effet dont la réponse n'est pas si évidente malheureusement. On pourrait croire sur la site officiel de Qt que ça tombe sous le sens. Je vais me faire l'écho ici d'une question posée dans un forum Qt sur LinkedIn car je suis moi même surpris du développement que prend cette question et ses commentaires.

Aux développeurs Qt, on va souvent poser la question suivante : tout ceci est bien joli mais est ce que cela peut s'exécuter dans un browser web ? Et le problème ce sont déjà les différentes technos, les différents types d'applications que l'on doit choisir à la base pour développer avec Qt.

Je tiens à vous signaler ici que je ne vais pas me lancer dans le développement de Mock pour chacune des technos, j'ai pas l'envie et pas le temps. Je ne fais que répertorier les différentes technos évoquées dans cette question au cas où ... on me pose la même question et où je doive y répondre rapidement.

Voici donc une plongée dans les différentes technos qui pourraient permettre de développer une application Web avec Qt/C++.

qmlweb

La première idée c'est QML Web et ce projet existe dans GitHub à l'adresse suivante :

https://github.com/qmlweb/qmlweb

https://github.com/qmlweb/qmlweb
La doc dit : Bring the power of QML to the web browser. Bon il faudra surement regarder cela de plus prêt, moi j'avance ...

48 Watch, 283 Star, 28 Fork ça à l'air sérieux.

Mais on se pose encore des questions :

Which browser engine use? it work on mobile systems too? (android and iOS mainly). If it use the standard Qt web engine it will suffer on the same problem on mobile OS...

Cutelyst

https://github.com/cutelyst/cutelyst/wiki
C++ Web Framework built on top of Qt, using the simple approach of Catalyst (Perl) framework. http://cutelyst.org

qaap

Petar Koretić We also developed and are developing Qt middleware based web framework (as Node.js express is for example) https://github.com/qaap/recurse

qtwebservice


http://qtwebservice.io/
Simple and flexible web framework
Write everything in QML and JavaScript

TreeFrog Framework

High-speed C++ MVC Framework for Web Application

http://www.treefrogframework.org/
Remarque : ce que j'aime bien dans celui là c'est que l'on y parle de MVC ... pour le reste cela à l'air sérieux.

other frameworks ...




C++ Web Toolkit

Conclusion

Pour moi c'est assez clair, chacun y va de son framework et du bon bout de code qui permettra d'embbeded une appli Qt dans un browser. Mais cela ne me parait pas très sec et pour l'instant, je ne saurais pas par où commencer. Si en fait choisir le bon framework mais il faut attendre le mainstream qui sera certainement intégré dans Qt.

Je savais que la portabilité multi-plateformes de Qt était un "petit" problème ... le web ne semble pas être à la porté de tout le monde ... à creuser !