Qt 5 la migration Ne peut pas ouvrir le fichier include: 'ui_mainwindow.h'
Je suis en train de migrer un projet simple pour Qt 5. Le projet a été initialement écrit pour Qt 4, et il compile des beaux-là.
Lors de la compilation avec Qt 5, cependant, j'obtiens cette erreur:
error: C1083: Cannot open include file: 'ui_mainwindow.h': No such file or directory
Maintenant, je sais que ui_mainwindow.h doit être auto-généré lors de la compilation, et j'ai vérifié, et il n'est pas généré lors de la compilation avec Qt 5.
Note
Ce qui se passe sur un projet nouvellement créé.
Étapes pour reproduire:
- Créer un nouveau projet sous Qt Creator + Qt 4.
- De copier un projet à l'autre de la machine où Qt Creator + Qt 5 a été installé.
- Projet ouvert, après correction de quelques erreurs de ce un pop-up.
Assurez-vous que vous êtes en train d'ajouter les widgets module. Quelque chose comme ceci dans votre .pro:
Découvrez le Makefile généré par qmake. Vous devriez voir une section semblable à ceci:
Claire de votre projet et de le construire. Voyez-vous
Un problème possible est que
Ok, c'est bizarre, il a travaillé, après j'ai supprimé le debug et release dossiers . Mais puisque je n'avais pas copié sur l'autre machine (l'une avec Qt 5) pour commencer, c'est très, très bizarre, pourquoi il a aidé à maintenant. Merci pour l'aide btw.
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
Découvrez le Makefile généré par qmake. Vous devriez voir une section semblable à ceci:
compiler_uic_clean: -$(DEL_FILE) ui_mainwindow.h ui_mainwindow.h: ../widgettest/mainwindow.ui /Users/kevin/Development/Qt5.1.1/5.1.1/clang_64/bin/uic ../widgettest/mainwindow.ui -o ui_mainwindow.h
Ne l'uic exécutable que c'références existent réellement?Claire de votre projet et de le construire. Voyez-vous
uic
appelée? Pourriez-vous poster votre .pro
fichier?Un problème possible est que
Clean All
ou Rebuild All
ne pas supprimer le fichier Makefile. Essayez de le supprimer à la main (ou mieux: supprimer l'intégralité d'un dossier de création)Ok, c'est bizarre, il a travaillé, après j'ai supprimé le debug et release dossiers . Mais puisque je n'avais pas copié sur l'autre machine (l'une avec Qt 5) pour commencer, c'est très, très bizarre, pourquoi il a aidé à maintenant. Merci pour l'aide btw.
OriginalL'auteur sashoalm | 2013-10-31
Vous devez vous connecter pour publier un commentaire.
Ce qui a fonctionné pour moi en fin de compte a été supprimer à la fois le Debug et Release construire des dossiers. Ce qui est étrange, c'est que je n'avais pas copié au départ, donc je n'ai aucune idée de pourquoi il a aidé les supprimer après ils ont d'abord été créés.
Mais si quelqu'un a ce problème, essayez de supprimer le Debug et Release des dossiers, ainsi que l' .fichier de l'utilisateur. Cela Qt Creator pour reconfigurer votre projet.
OriginalL'auteur sashoalm
J'ai eu cette erreur lorsque je l'ai utilisé cmake au lieu de qmake pour construire mon projet,
et je l'ai résolu en cmake en ajoutant:
OriginalL'auteur
J'ai eu le même problème; résolu le nettoyage du projet (à Partir de Qt->Build) et d'ajouter:
Comme un exemple, c'est mon CMakeLists.txt de travail:
OriginalL'auteur Marco Ruiz