Sur cette page

Déploiement d'applications Qt

Le déploiement d'une application Qt ne nécessite aucune programmation C++. Tout ce que vous avez à faire est de construire Qt et votre application en mode release, en suivant les procédures décrites dans cette documentation.

Bibliothèques statiques ou partagées

Il existe deux façons de déployer une application :

  • le lien statique (Static Linking)
  • Bibliothèques partagées (Frameworks sur Mac)

L'édition de liens statiques permet d'obtenir un exécutable autonome. L'avantage est que vous n'aurez que quelques fichiers à déployer. Les inconvénients sont que les exécutables sont volumineux et sans flexibilité (c'est-à-dire qu'une nouvelle version de l'application, ou de Qt, nécessitera de répéter le processus de déploiement), et que vous ne pouvez pas déployer de plugins.

Pour déployer des applications basées sur des plugins, vous pouvez utiliser l'approche des bibliothèques partagées. Les bibliothèques partagées permettent également d'obtenir des exécutables plus petits et plus souples. Par exemple, en utilisant l'approche des bibliothèques partagées, l'utilisateur peut mettre à jour indépendamment la bibliothèque Qt utilisée par l'application.

Une autre raison pour laquelle vous pourriez vouloir utiliser l'approche des bibliothèques partagées est que vous souhaitez utiliser les mêmes bibliothèques Qt pour une famille d'applications. En fait, si vous téléchargez l'installation binaire de Qt, vous obtenez Qt en tant que bibliothèque partagée.

L'inconvénient de l'approche des bibliothèques partagées est que vous aurez plus de fichiers à déployer. Pour plus d'informations, voir Création de bibliothèques partagées.

Déploiement des bibliothèques de Qt

À moins que Qt ne fasse partie des bibliothèques du système, il doit être redistribué avec votre application. Le minimum est de redistribuer la durée d'exécution des bibliothèques utilisées par l'application. Cependant, avec l'édition de liens statiques, les temps d'exécution de Qt peuvent être compilés dans l'exécutable.

En général, vous devez déployer tous les plugins que votre version de Qt utilise, à l'exception de ceux que vous avez identifiés comme étant inutiles pour votre application et ses utilisateurs.

Par exemple, vous pouvez avoir besoin de déployer des plugins pour le support JPEG et les pilotes SQL, mais vous devez également déployer les plugins dont vos utilisateurs peuvent avoir besoin, y compris ceux pour l'accessibilité. Pour plus d'informations sur les plugins, voir Comment créer des plugins Qt.

Les applications utilisant Qt Qml doivent également fournir les modules QML qu'elles utilisent.

Lors du déploiement d'une application utilisant l'approche des bibliothèques partagées, vous devez vous assurer que les bibliothèques Qt utilisent le chemin correct pour trouver les plugins Qt, la documentation, la traduction, etc. Pour ce faire, vous pouvez utiliser un fichier qt.conf. Pour plus d'informations, voir Utilisation de qt.conf.

Selon la configuration, les bibliothèques spécifiques au compilateur doivent également être redistribuées. Pour plus d'informations, voir les dépendances des applications spécifiques à la plate-forme pour Linux, Windows et macOS.

Licences

Certaines des bibliothèques de Qt sont basées sur des bibliothèques tierces qui ne sont pas autorisées à utiliser le même modèle de double licence que Qt. Par conséquent, il convient d'être prudent lors du déploiement d'applications qui utilisent ces bibliothèques, en particulier lorsque l'application est liée statiquement à ces bibliothèques. Pour plus d'informations, voir Code tiers utilisé dans Qt.

Certaines configurations de QtNetwork utilisent OpenSSL au moment de l'exécution. Le déploiement des bibliothèques OpenSSL est soumis à des restrictions de licence et d'exportation. Pour plus d'informations, voir Classes Secure Sockets Layer (SSL).

Notes spécifiques à la plate-forme

La procédure de déploiement des applications Qt est différente selon les plateformes :

Voir aussi Déployer des traductions.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.