2017-05-12 4 views
1

J'ai des problèmes pour lier un projet de test; c'est l'erreur:Erreur de lieur avec la génération hors source dans Qt 5

DataGUI.obj:-1: error: LNK2019: unresolved external symbol "public: __cdecl GuiUtilities::TreeModel::TreeModel(class QObject *)" ([email protected]@@[email protected]@@@Z) referenced in function "public: __cdecl GuiUtilities::DataGUI::DataGUI(class QWidget *)" ([email protected]@@[email protected]@@@Z) 

File not found: DataGUI.obj 

The process "C:\Qt\Tools\QtCreator\bin\jom.exe" exited with code 2. 
Error while building/deploying project DataGUI (kit: Desktop Qt 5.8.0 MSVC2015_64bit) 
The kit Desktop Qt 5.8.0 MSVC2015_64bit has configuration issues which might be the root cause for this problem. 

Le fichier objet 'DataGUI.obj' existe.

Je suis en train de faire une sortie de la construction de la source, et ainsi:

./Project/sources 
./Project/*.pro 
./Build/build-Project-.../Debug/DataGUI.obj 

Avec exactement la même configuration, je l'ai déjà construit d'autres projets Qt avec succès.

+0

L'erreur persiste encore après « Effacer » le projet, et de le construire à nouveau? – Danyright

+0

@Danyright: Oui, je continue d'avoir la même erreur. – Pietro

+0

Ok. Ensuite, je voudrais vérifier votre code. Est-il possible que vous ne liez pas correctement (#include) la classe TreeModel? Pouvez-vous publier le code de DataGUI? – Danyright

Répondre

1

Ce problème s'est partiellement résolu, mais je laisse cette question pour référence au cas où la même chose arriverait à d'autres.

C'est la séquence des événements:

  • Travailler avec l'IDE en mode débogage.
  • Le programme compilé sans erreurs/avertissements.
  • J'ai reçu l'erreur de l'éditeur de liens mentionnée dans la question.
  • J'ai essayé de reconstruire l'ensemble du projet plusieurs fois, sans succès.
  • Définissez l'IDE en mode de libération.
  • Plusieurs erreurs de compilation ont été détectées.
  • Redéfinissez l'IDE en mode débogage.
  • Obtient les mêmes erreurs de temps de compilation que dans le mode Release.

Maintenant, je résolvez les erreurs de temps de compilation ...

+1

ASTUCE: Parfois, la suppression du répertoire de construction manuellement aidera. Propre parfois ne réussit pas. –