Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 5 sur 5
  1. #1
    Invité de passage
    Inscrit en
    avril 2012
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : avril 2012
    Messages : 3
    Points : 0
    Points
    0

    Par défaut Librairies FlyCapture2 sur CodeBlocks

    Bonjour,
    Je dois réaliser une application utilisant l'API FlyCapture2 en C++.
    J'utilise donc CodeBlocks, sur Linux : aucun problème pour utiliser les librairies et compiler.
    Cependant, mon programme dois fonctionner sur Windows, je tente donc de mettre en place FlyCapture2 sur Windows avec CodeBlocks.
    J'ajoute les lib et le include avec les .h dans les "Global compiler setting". Comme j'ai fait sur linux.
    Cependant ici, lorsque je fais un petit essai de programme pour vérifier que les librairies fonctionnent, j'ai une erreur bizar :
    Voila mon petit programme:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    #include <iostream>
    #include "FlyCapture2.h"
    using namespace FlyCapture2;
     
    int main()
    {
        Error error;
        return 0;
    }
    Et voilà l'erreur :
    -------------- Build: Debug in TextFlyCap2 ---------------

    Compiling: main.cpp
    Linking console executable: bin\Debug\TextFlyCap2.exe
    obj\Debug\main.o: In function 'main':
    C:/Users/Romain/Documents/CodeBlocksDoss/TextFlyCap2/main.cpp:7: undefined reference to '_imp___ZN11FlyCapture25ErrorC1Ev'
    C:/Users/Romain/Documents/CodeBlocksDoss/TextFlyCap2/main.cpp:8: undefined reference to '_imp___ZN11FlyCapture25ErrorD1Ev'
    collect2: ld returned 1 exit status
    Process terminated with status 1 (0 minutes, 1 seconds)
    2 errors, 0 warnings
    J'ai tout essayé, je ne comprends pas. Je sais simplement que c'est le lien avec les librairies qui se fait mal...
    Comprenez vous cette erreur ?
    Merci d'avance

  2. #2
    Rédacteur
    Avatar de Davidbrcz
    Homme Profil pro
    Supaéro-Cesure : CERN, departement IT
    Inscrit en
    juin 2006
    Messages
    2 295
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 22

    Informations professionnelles :
    Activité : Supaéro-Cesure : CERN, departement IT

    Informations forums :
    Inscription : juin 2006
    Messages : 2 295
    Points : 3 551
    Points
    3 551

    Par défaut

    Erreur de linker :
    Soit tu as mal lié la bibliothèque (cf ceci) soit c'est un "incompatibilité ABI" ie une bibliothèque compilé avec un certain compilateur peut ne pas marcher avec un autre compilateur. Attention : ceci peut même arriver avec juste une différence de version du compilateur !

    Bref: mon conseille regarde les options ou sinon essaye avec un autre compilateur (VSC++)
    "Never use brute force in fighting an exponential." (Andrei Alexandrescu)

    Mes articles dont Conseils divers sur le C++
    Une très bonne doc sur le C++ (en) Why linux is better (fr)

  3. #3
    Invité de passage
    Inscrit en
    avril 2012
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : avril 2012
    Messages : 3
    Points : 0
    Points
    0

    Par défaut

    Justement, sur VSC++ j'ai réussi à compiler avec les mêmes bibliothèques.
    Ca fonctionne que sur VSC++ alors ?
    Je peux voir où les options de la librairie ?
    Sur codeBlocks je crois que j'ai vu qu'il était possible d'utiliser le compilateur de VSC++..

  4. #4
    Rédacteur
    Avatar de Davidbrcz
    Homme Profil pro
    Supaéro-Cesure : CERN, departement IT
    Inscrit en
    juin 2006
    Messages
    2 295
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 22

    Informations professionnelles :
    Activité : Supaéro-Cesure : CERN, departement IT

    Informations forums :
    Inscription : juin 2006
    Messages : 2 295
    Points : 3 551
    Points
    3 551

    Par défaut

    Citation Envoyé par neoDico Voir le message
    Justement, sur VSC++ j'ai réussi à compiler avec les mêmes bibliothèques.
    Ca fonctionne que sur VSC++ alors ?
    C'est ce que je crains. A moins d'avoir les sources pour recompiler la lib avec g++.

    Citation Envoyé par neoDico Voir le message
    Je peux voir où les options de la librairie ?
    Sur codeBlocks je crois que j'ai vu qu'il était possible d'utiliser le compilateur de VSC++..
    Aucune idée, j'utilise pas d'IDE.
    "Never use brute force in fighting an exponential." (Andrei Alexandrescu)

    Mes articles dont Conseils divers sur le C++
    Une très bonne doc sur le C++ (en) Why linux is better (fr)

  5. #5
    Invité de passage
    Inscrit en
    avril 2012
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : avril 2012
    Messages : 3
    Points : 0
    Points
    0

    Par défaut .lib en .a

    Je n'ai pas les sources pour recompiler.
    Par contre j'ai vu des trucs à propos de l'outil reimp de MinGW qui permettrait de convertir les .lib de visual en .a utilisables par GCC.
    Cependant j'arrive pas à l'utiliser, la ligne de commande "reimp -d FlyCapture2.lib"
    ne donne rien du tout.

    Quelqu'un pourrait me les convertir ? Svp
    Je les ai mise là : http://uploading.com/files/54a69m6e/lib.rar/

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •