Compiler Qt5.11.2 x86 avec MVS 2017
Qt (prononcé "cute") est une boîte à outils pour créer des applications multiplateformes classiques (style bureau) et/ou embarquées avec peu ou pas de changement.
Pour certains besoins spécifiques, il est possible de compiler cette boite à outils afin de la personnaliser.
Outils requis
Il faut installer le framework Qt en version 5 et surtout les sources qui ne sont pas cochées par défaut (prévoir env 2Go).
On va installer Microsoft Visual Studio 2017 dans sa version community.
Configuration de la compilation
Pour compiler en x86 ou 32 bits il faut passer par la console prévue pour à cet effet :
Dans le menu de démarrage tapper :"x86 pour VS 2017"
Il devrait apparaître l'invite de commande des outils natifs pour VS 2017.
Se rendre à la racine des sources de Qt précédemment installées, puis lancer la commande configure
configure -debug-and-release -prefix "D:/code/qt/5.11.2/5.11.2/msvc2017_32" -openssl-linked OPENSSL_LIBS="-lssleay32 -llibeay32" -I "D:/code/tools/OpenSSL-Win32/include" -L "D:/code/tools/OpenSSL-Win32/lib" -platform win32-msvc -nomake examples -nomake tests -skip qtconnectivity -no-feature-accessibility -opensource
Analysons cette commande :
- -debug-and-release, Signifie que la compilation générera des libs pour le développement et pour la production
- -prefix "...", indique l'emplacement des libs à installer avec la commande nmake install.
- -openssl-linked, permet de lier la librairie openSsl (Facultatif si vous n'utilisez pas de gestion réseau)
- -I, permet d'inclure des fichiers header ici pour OpenSsl
- -L, permet de lier des librairies ici pour OpenSsl
- -Plateform win32-msvc, signifie la plateforme cible
- -nomake examples, ne compile pas les exemples (gagnons un peu de temps et d'espace...)
- -nomake tests, idem pour les tests
- -skip ignore des composants, ici qtconnectivity (nécessaire pour la communication bluetooth...)
- -no-feature-accessibility, ignore les fonctions d'accessibilités
- -opensource, spécifie que l'on souhaite utiliser Qt en LGPL ou GPL. suivant les composants utilisés
Une fois terminée et s'il n'y a pas d'erreur, vérifiez les warnings.
Compilation de Qt
Maintenant que la compilation est configurée, il suffit de lancer la commande de compilation
nmake
Attention pour compiler le module QtWebEngine il vous faudra au minimum 4Go de libre en RAM.
Sinon le linker sortira en erreur mémoire. (Utilisez dans le configure -skip pour ce module si vous n'en avez pas besoin).
Installation des librairies compilées de Qt
Le plus dur est fait! Il ne reste plus qu'une commande pour regrouper les librairies compilées, dans le répertoire prévu par le paramètre -prefix dans la commande configure.
nmake install
Toutes les librairies doivent se trouver dans le dossier ici "D:/code/qt/5.11.2/5.11.2/msvc2017_32".
Reste plus qu'a configurer dans Qtcreator le kit de compilation, pour utiliser nos libs fraîchement compilées :) .