Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Futur Membre du Club
    Exécuter l'application compilée
    Bonjour,

    Je débute en programmation graphique. J'ai donc voulu réaliser un programme assez simple en C++ avec Qt sous VS2019. Le programme marchait bien en mode déboguage, puis j'ai voulu passer en release. Et là, problème : j'obtiens deux erreurs: le fichier qt5core.pdb introuvable, et, lorsque j'essayais de lancer quand même l'application, erreur "no qt platform could be initialized".
    EN recherchant un peu sur Internet, ça semblait être dû à des dll manquantes de Qt, j'ai donc essayé d'exectuer windeployqt sur le fichier. A présent, j'obtiens une autre erreur: libstdc++-6.dll manquant. J'imagine que c'est un progrès, car ce n'est plus la même erreur, mais je ne vois quandmême pas comment continuer.4

    Quelqu'un pourrait-il m'aider?

    Enheduanna

  2. #2
    Responsable Qt & Livres



    Effectivement, ça ressemble à un problème de DLL (et pas de PDB, qui n'est normalement utilisé que pour le débogage). Il te faut au moins les DLL des modules de Qt, mais aussi des extensions de plateforme (dans le dossier platform).

    Vu l'erreur que tu as, en particulier, tu sembles mélanger des DLL qui viennent de MinGW/GCC (dont la STL est disponible dans libstdc++) et un binaire compilé avec Visual Studio (selon ce que tu écris). Aurais-tu plusieurs versions de Qt installées ?
    Vous souhaitez participer aux rubriques Qt ou PyQt (tutoriels, FAQ, traductions), HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  3. #3
    Futur Membre du Club
    Salut dourouc05!

    J'ai vérifié le dossier de Qt, mais il ne contient qu'un dossier de version (à savoir 5.14.2).

    Comme tu m'as dit que c'était une bibliothèqe minGW, j'ai réussi à trouver dans le dossier minGW73_64 la dll stdc++-6.dll que j'ai rajouté au dossier de l'exécutable. J'ai aussi rajouter deux autres dll qui le faisaient raller: libgcc_s_seh-1.dll et libwinpthread-1.dll. Mais du coup, j'ai à présent l'erreur suivante au lancement de l'application:

    "Le point d'entrée de procédure ?dragMoveEvent@QWidget@@MEAAXPEAVQDragMoveEvent@@@Z est introuvable dans la bibliothèque de liens dynamiques %repertoire de l'application%\%nom de l'application%.exe"

    Du coup, je comprends nettement moins cette erreur. Mais c'est peut-être due justement au fait qu'il y a ce mélange de DLL?

  4. #4
    Futur Membre du Club
    Du coup, j'ai essayé sous Qt Editor. Avec MSVC, il y a toujours le même souci. J'ai donc essayé le kit MinGW, qui ne donne plus lieu à ces erreurs. Par contre, il ne trouve plus le fichier texte contenant les données pour l'application. Alors qu'il se trouve bien dans le repertoire de l'application. Mais ça semble être un autre souci, donc j'ai ouvert une nouvelle discussion : https://www.developpez.net/forums/d2.../#post11547583

    Par contre, si quelqu'un a une idée de pourquoi il y a ce problème de dll avec MSVC, je suis preneur, pour comprendre