Créer un exécutable windows sur une installation Linux avec Qt Creator
par
, 10/10/2015 à 00h14 (2599 Affichages)
Bonjour à tous,
Si vous développez vos programmes sous Linux, vous allez sûrement avoir besoin de le déployer sur Windows. Mais vous n'avez pas de machine équipée de cet OS et vous vous sentez bloqué. Rassurez vous, vous ne le serez pas longtemps. Dans les lignes qui suivent vous allez voir comment installer une version windows de Qt sur votre distribution Linux préférée et comment compiler correctement votre programme pour qu'il puisse être exécuté sur l'OS à la fenêtre .
Il y a plusieurs moyens d'effectuer ceci. Ici nous allons voir comment faire en utilisant Qt 5.5.0 for Windows 32-bit MinGW 4.9.2 pour une installation quasi "ready to use". Seul point noir, vous ne pourrait pas créer un programme utilisant WebEngine ;
La première chose à faire est d'installer Wine, mono et gecko. Personnellement, j'ai configuré Wine pour fonctionner comme Win 8. Pour régler ceci vous pouvez utiliser la commande.
Code : Sélectionner tout - Visualiser dans une fenêtre à part winecfg
Suivez les différents étapes jusqu'à la fin de l'installation. Pensez bien à installer Qt Creator.
Ceci fait, ouvrez votre projet avec la version Qt Creator nouvellement installée et lancée la commande Execute (le raccourcis de base est Ctrl + R). Normalement votre application devrait ce lancer.
Si vous rencontrez des problèmes à ce niveau, cela peut venir de la configuration de votre .pro ou de différents paramètres dans votre application. Je pense en particulier à des chemins codés en dur : bahh oui, windows aura énormément de mal à comprendre pourquoi vous lui demandez d'aller dans votre home .
Si vous regardez le dossier généré vous devriez y voir votre exécutable. Attention cependant, ce n'est pas fini. Il va falloir maintenant inclure dans ce dossier les librairies nécessaires pour faire fonctionner votre programme de manière standalone. Pour cela les versions récentes de Qt offre un outil sympa : windeployqt. La capture d'écran qui suit montre comment l'utiliser: dans les grandes lignes, il suffit d'ajouter une étape à la compilation release (à priori vous n'allez pas distribuer une version debug de votre application) qui importera les librairies nécessaire au déploiement sur Windows (n'oubliez pas le . dans la zone arguments). À chaque fois que vous relancerez Execute depuis Qt Creator, les libraires nécessaires seront importées :
Vois devriez à présent avoir un dossier release complet qui pourra être installé sur tout PC Windows récent.
Note : windeployqt.exe semble oublier au moins 2 modules :
- Qt5Quick.dll ;
- Qt5Sql.dll.
Il vous faudra les ajouter à la main. Vous les trouverez dans le dossier bin de mingw : chez moi ça ressemble à ceci : Qt/Qt5.5.0/5.5/mingw492_32/bin/