comme la sortie d'OpenCV 2.3 est enfin terminée, j'ai voulu compiler et installer cette dernière version sur mon système. Comme je travaille souvent avec Qt et le QtCreator, je voulais bien sûr pouvoir l'utiliser dans mes projets Qt. J'ai essayé plusieurs méthodes maintenant pour quelques heures, mais toujours obtenir des erreurs:En utilisant OpenCV 2.3 avec Qt dans QtCreator
Premier essai: 2.3 avec OpenCV Compiler WITH_QT
D'abord, je voulais le faire comme je l'ai fait avec la version 2.2 qui a bien fonctionné pour moi. Pour cela, je suivais ce guide: http://knowtheabc.wordpress.com/2011/02/25/windows-opencv-and-qt-creator/
- Téléchargé le code source
- Mettre en place CMake et dit pour créer MinGW Makefiles et spécifié les chemins du
g++.exe
,gcc.exe
etqmake.exe
dans mon C: \ Qt .. .chemins, vérifié WITH_QT et généré des Makefiles pour une version. - construit et installé dans un shell en utilisant
mingw32-make
etmingw32-make install
Après cela a été terminé avec succès, je voulais juste ajouter les chemins à mon dossier « .pro » et a été en mesure de construire un logiciel agréable qui utilise OpenCV (à l'époque où j'ai utilisé la version 2.2). Fondamentalement, la dernière partie est décrite ici: http://knowtheabc.wordpress.com/2011/02/25/opencv-in-qt/
J'ai donc essayé la même chose avec la version 2.3 qui a été compilée avec succès comme avec l'ancienne version. Il construit même mon programme d'exemple, mais dès que je l'exécute, il se ferme à nouveau et retourne: -1073741515
Deuxième essai: Utilisation de la Superpack OpenCV pré-construit en utilisant MinGW
Comme la première méthode n'a pas travail j'ai essayé d'utiliser les versions de pré-construction. Bien que le WITH_QT n'ait pas été activé, je voulais quand même essayer. J'ai donc téléchargé le superpack, l'ai extrait et l'ai mis quelque part. Je voulais donc faire la même chose que je faisais avant et ajouté les chemins à inclure le dossier et les dll à mon dossier « .pro »:
INCLUDEPATH+= C:/workspace/opencv/OpenCV2.3/build/include
LIBS+= C:/workspace/opencv/OpenCV2.3/build/x64/mingw/bin/*.dll
Comme compilateur je le compilateur MinGW qui vient avec le Qt en cours SDK. Mais cette plante tout bâtiment:
C:/workspace/opencv/OpenCV2.3/build/x64/mingw/bin/libopencv_calib3d230.dll: file not recognized: File format not recognized
collect2: ld returned 1 exit status
mingw32-make[1]: *** [release\CoinDetector.exe] Error 1
mingw32-make: *** [release] Error 2
essayer Troisième: Tout comme la seconde, mais avec l'aide du compilateur VC2008
J'ai essayé la même chose avec le compilateur VC2008 qui est fourni avec le SDK Qt ainsi . J'ai donc sélectionné le compilateur et adapté le chemin dans le ".fichier pro » à utiliser:
LIBS+= C:/workspace/opencv/OpenCV2.3/build/x64/vc9/bin/*.dll
Mais cette plante aussi avec une erreur qu'il ne peut pas lire le dll:
C:/workspace/opencv/OpenCV2.3/build/x64/vc9/bin/opencv_calib3d230.dll : fatal error LNK1107: Ungültige oder beschädigte Datei: Lesen bei 0x2F0 nicht möglich.
Voici mes paramètres:
- Win7 Professional x64
- Dernier Qt SDK installé (4.7.3)
- OpenCV version 2.3
Est-ce que quelqu'un a une idée de ce qui pourrait être mal ici? Serait heureux pour toute aide!
bien en tant qu'étudiant J'ai le Visual Studio 2008 complet installé depuis que je l'ai obtenu via MSDNAA. Donc, vous utilisez la version pré-construite, mais incluez simplement les fichiers lib au lieu des dlls? Cela vaut la peine d'essayer ... merci pour l'instant – evident
OK, je viens d'essayer vos trucs et il ne donne plus d'erreurs lors de la compilation ... mais maintenant je reçois la même erreur que dans la version mingw je me suis compilé dans "First essayez "- la valeur de retour de: -1073741515 ... donc tout le problème semble se résumer à corriger cette erreur, alors il devrait fonctionner avec le compilateur Visual Studio et MinGW aussi bien ... – evident
Avez-vous modifié votre variable d'environnement PATH? La mine ressemble à l'enfer, parce que j'ai continué à ajouter jusqu'à ce que cela fonctionne: Spécialement c: \ OPenCV2.3 \ build \ x86 \ vc9 \ bin; C: \ opencv2.3 \ build \ x86 \ mingw \ bin; c: \ mingw \ bin; c: \ Program Files (x86) \ Microsoft Visual Studion 9.0 \ VC \ bin ... – MisterWalrus