+ Répondre à la discussion
Affichage des résultats 1 à 3 sur 3
  1. #1
    Membre habitué
    Homme Profil pro
    Développeur informatique
    Inscrit en
    mai 2002
    Messages
    228
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : mai 2002
    Messages : 228
    Points : 100
    Points
    100

    Par défaut gcc, .o et linkage

    Bonjour,

    J'ai un fichier toto.c avec

    Code :
    1
    2
    3
    4
    void listeUsb( void )
    {
    blablabla
    }
    Un fichier toto.h avec

    Et un fichier go.c avec:

    Code :
    1
    2
    3
    4
    5
    6
    7
    include "toto.h"
     
    int main ( int argc, char** argv )
    {
       listeUsb();
       return( 0 )
    }
    Je compile avec

    Code :
    gcc toto.c -c -o toto.o -L/usr/X11R6/lib -I/usr/local/include
    Il me genere toto.o

    puis:

    Code :
    gcc go.c toto.o -o go -L/usr/X11R6/lib -I/usr/local/include -lX11 -lglut -lGL -lusb
    Et le il me dit:

    Undefined reference to "listeUsb"

    Ma question: pourquoi ? Il devrait le trouver dans toto.o ?

    Merci de votre aide !
    Cordialement.

  2. #2
    Nouveau Membre du Club
    Inscrit en
    novembre 2009
    Messages
    47
    Détails du profil
    Informations forums :
    Inscription : novembre 2009
    Messages : 47
    Points : 38
    Points
    38

    Par défaut

    es tu certain de ton message d'erreur ?

    le link devrait peut être t'indiquer (avec un "_" devant listeUsb)
    Code :
    1
    2
     
    Undefined reference to "_listeUsb"
    je viens d'essayer sans problème avec :
    Code :
    1
    2
    3
     
    gcc toto.c -c -o toto.o
    gcc go.c toto.o -o go
    (en corrigeant => include "toto.h" en #include "toto.h")

    regarde peut être dans les .o comment se nomme exactement la fonction listeUsb avec
    Code :
    1
    2
    3
     
    nm toto.o | grep listeU
    nm go.o | grep listeU

  3. #3
    Membre habitué
    Homme Profil pro
    Développeur informatique
    Inscrit en
    mai 2002
    Messages
    228
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : mai 2002
    Messages : 228
    Points : 100
    Points
    100

    Par défaut Autant pour moi

    Bonjour

    Cela vient de moi, une erreur de #ifdef

    Cordialement.

+ Répondre à la discussion
Cette discussion est résolue.

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
  •