IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
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

OpenCV Discussion :

Problème de compilation avec Code::Blocks


Sujet :

OpenCV

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Âge : 31
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 35
    Points : 22
    Points
    22
    Par défaut Problème de compilation avec Code::Blocks
    Salut a tous,
    Mon problème n'est pas le code mais le link.
    Mon compilateur ne trouve pas -lutils!
    Je link avec : -lml -lcvaux -lhighgui -lcv -lcxcore -lutils, j'utilise ubuntu 11.04 64bits et la dernière svn de OpenCV compilé.

    PS : J'aimerais bien que l'on m'indique comment compiler en commande (terminal), pour voir si c'est un problème de codeblocks ou d'OpenCV.

  2. #2
    Membre confirmé
    Inscrit en
    Mars 2010
    Messages
    439
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 439
    Points : 533
    Points
    533
    Par défaut
    Bonjour

    Il semblerait que des erreurs interviennent si openCV a été compilé sous Visual est ce que cela pourrait venir de la ?

    Tu es sur de ton link présence de la lib la ou elle doit être et syntaxe ?

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Âge : 31
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 35
    Points : 22
    Points
    22
    Par défaut
    Non j'ai pas 'compilé' avec visual puisque je travaille avec codeblocks!

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2011
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 29
    Points : 33
    Points
    33
    Par défaut
    Citation Envoyé par xvid110 Voir le message
    Non j'ai pas 'compilé' avec visual puisque je travaille avec codeblocks!
    Bonjour,

    Je peux essayer de refaire ton test de compil chez moi mais je n'ai eu aucun souci avec CodeBlocks sur Windows avec utilisation de openCV compilé avec CMake.
    Il me faudra un peu de temps pour faire le test sous Ubuntu car je suis sur d'autres problèmes en image.

    En attendant, sais-tu si ta librairie libutils a été bien générée ? Si oui, est-elle dans le chemin indiqué en paramètre du linker ?
    Peux-tu me dire si c'est la seule librairie que le linker ne trouve pas ?

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Âge : 31
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 35
    Points : 22
    Points
    22
    Par défaut
    Merci de prendre le temps de répondre.

    Je n'ai pas indiqué le chemin de lutils j'ai mis directement comme option dans le panneau de droite -lutils (et les autres...).
    Je ne connais pas le chemin de cette lib, est ce que c'est une lib spéciale OpenCV ou pas?

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2011
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 29
    Points : 33
    Points
    33
    Par défaut
    Citation Envoyé par xvid110 Voir le message
    Merci de prendre le temps de répondre.

    Je n'ai pas indiqué le chemin de lutils j'ai mis directement comme option dans le panneau de droite -lutils (et les autres...).
    Je ne connais pas le chemin de cette lib, est ce que c'est une lib spéciale OpenCV ou pas?
    Difficile pour moi de répondre de façon certaine tant que je ne compilerais pas sous Ubuntu.
    Je peux te dire en tout cas que sous MacOs ou sous Windows, je n'ai pas besoin de cette librairie utils.
    Pour te dire, ce que j'essaye de comprendre du problème de link que tu rencontres, c'est de savoir s'il vient uniquement de cette librairie utils et aussi où as-tu vu qu'il était nécessaire que tu linkes avec cette librairie ?
    Je te proposerais bien de tester de linker sans utils pour voir ce que cela donne.
    Je peux aussi te donner les librairies que j'utilise si tu préfères.

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Âge : 31
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 35
    Points : 22
    Points
    22
    Par défaut
    J'aimerais bien que tu me donne les libs que t'utilise. C'est le compilateur de codeblocks qui me dit: "can't find -lutils", si je l'enlève des options il continue de le dire. C'est le seul problème de link que j'ai.

  8. #8
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2011
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 29
    Points : 33
    Points
    33
    Par défaut
    Citation Envoyé par xvid110 Voir le message
    J'aimerais bien que tu me donne les libs que t'utilise. C'est le compilateur de codeblocks qui me dit: "can't find -lutils", si je l'enlève des options il continue de le dire. C'est le seul problème de link que j'ai.
    Voici ce que j'ai sous Windows avec CodeBlocks (onglet Linker Settings)
    C:\OpenCV2.2MinGW\lib\libopencv_video220d.dll.a
    C:\OpenCV2.2MinGW\lib\libopencv_calib3d220d.dll.a
    C:\OpenCV2.2MinGW\lib\libopencv_contrib220d.dll.a
    C:\OpenCV2.2MinGW\lib\libopencv_core220d.dll.a
    C:\OpenCV2.2MinGW\lib\libopencv_features2d220d.dll.a
    C:\OpenCV2.2MinGW\lib\libopencv_ffmpeg220d.dll.a
    C:\OpenCV2.2MinGW\lib\libopencv_flann220d.dll.a
    C:\OpenCV2.2MinGW\lib\libopencv_gpu220d.dll.a
    C:\OpenCV2.2MinGW\lib\libopencv_highgui220d.dll.a
    C:\OpenCV2.2MinGW\lib\libopencv_imgproc220d.dll.a
    C:\OpenCV2.2MinGW\lib\libopencv_legacy220d.dll.a
    C:\OpenCV2.2MinGW\lib\libopencv_ml220d.dll.a
    C:\OpenCV2.2MinGW\lib\libopencv_objdetect220d.dll.a
    C:\OpenCV2.2MinGW\lib\libopencv_ts220d.dll.a

  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Âge : 31
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 35
    Points : 22
    Points
    22
    Par défaut
    Merci beaucoup de ton aide j'ai enfin trouvé, il me dit plus que j'ai une erreur de link mais il me dit que j'ai une erreur de segmentation! Voici mon programme pourtant donné en exemple sur le site d'opencv:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    #include "opencv/cv.h"
    #include "opencv/highgui.h"
    #include <stdio.h>
     // A Simple Camera Capture Framework
     int main() {
       CvCapture* capture = cvCaptureFromCAM( CV_CAP_ANY );
       if ( !capture ) {
         fprintf( stderr, "ERROR: capture is NULL \n" );
         getchar();
         return -1;
       }
       // Create a window in which the captured images will be presented
       cvNamedWindow( "mywindow", CV_WINDOW_AUTOSIZE );
       // Show the image captured from the camera in the window and repeat
       while ( 1 ) {
         // Get one frame
         IplImage* frame = cvQueryFrame( capture );
         if ( !frame ) {
           fprintf( stderr, "ERROR: frame is null...\n" );
           getchar();
           break;
         }
         cvShowImage( "mywindow", frame );
         // Do not release the frame!
         //If ESC key pressed, Key=0x10001B under OpenCV 0.9.7(linux version),
         //remove higher bits using AND operator
         if ( (cvWaitKey(10) & 255) == 27 ) break;
       }
       // Release the capture device housekeeping
       cvReleaseCapture( &capture );
       cvDestroyWindow( "mywindow" );
       return 0;
     }

  10. #10
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2011
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 29
    Points : 33
    Points
    33
    Par défaut
    Bigre!
    Je dois te dire que je trouve que les programmes fournis en exemple ne sont pas exempts de bugs: Le code ne compile pas parfois.
    Idem pour le livre Learning OpenCV où par exemple, le code exemple de la DFT ne marche pas: J'ai dû chercher pour trouver un truc qui marche.

    Pour revenir à ton problème, je vois 2 hypothèses:
    1) tu linkes mais avec une mauvaise version de librairies
    2) bug dans le code exemple qui ne saute pas aux yeux: je vais le tester chez moi et je te donne la réponse.

  11. #11
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2011
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 29
    Points : 33
    Points
    33
    Par défaut
    Citation Envoyé par Picard2200 Voir le message
    Bigre!
    Je dois te dire que je trouve que les programmes fournis en exemple ne sont pas exempts de bugs: Le code ne compile pas parfois.
    Idem pour le livre Learning OpenCV où par exemple, le code exemple de la DFT ne marche pas: J'ai dû chercher pour trouver un truc qui marche.

    Pour revenir à ton problème, je vois 2 hypothèses:
    1) tu linkes mais avec une mauvaise version de librairies
    2) bug dans le code exemple qui ne saute pas aux yeux: je vais le tester chez moi et je te donne la réponse.
    Je viens de faire le test du code que tu as fourni.
    Je n'ai rien modifié (merci pour avoir filé un code fonctionnel: cela m'a bien aidé) et cela marche impeccable sur mon Mac.

  12. #12
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    35
    Détails du profil
    Informations personnelles :
    Âge : 31
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 35
    Points : 22
    Points
    22
    Par défaut
    ok mais le livre c'est normal que la plupart des exemples ne fonctionnent pas c'est de l'opencv 1.1 (ou 1.0 je sais plus) !

  13. #13
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2011
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2011
    Messages : 29
    Points : 33
    Points
    33
    Par défaut
    Citation Envoyé par xvid110 Voir le message
    ok mais le livre c'est normal que la plupart des exemples ne fonctionnent pas c'est de l'opencv 1.1 (ou 1.0 je sais plus) !
    Pas seulement malheureusement: le code donné pour la convolution dans le domaine fréquentiel comporte des erreurs de texte (voir appel à cvRect dans cvGetSubRect p181)

Discussions similaires

  1. [SDL 1.2] problème de compilation avec Code:Block
    Par RiNoXuS dans le forum SDL
    Réponses: 3
    Dernier message: 08/05/2015, 16h02
  2. [OCILIB] Problème de compilation avec code::blocks
    Par dbqg7322 dans le forum Interfaces de programmation
    Réponses: 2
    Dernier message: 11/01/2013, 13h21
  3. Problème de compilation avec Code Block
    Par med19972004 dans le forum Code::Blocks
    Réponses: 2
    Dernier message: 16/09/2011, 16h32
  4. Problème de compilation avec Code Block
    Par med19972004 dans le forum C++
    Réponses: 5
    Dernier message: 04/02/2011, 23h49
  5. [kjAPI] Compilation avec Code::Blocks
    Par ThomasCh dans le forum Moteurs 3D
    Réponses: 5
    Dernier message: 17/10/2006, 09h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo