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:

  1. Créer un nouveau projet sous Qt Creator + Qt 4.
  2. De copier un projet à l'autre de la machine où Qt Creator + Qt 5 a été installé.
  3. 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: 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