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

C Discussion :

undefined reference lors de la compilation des .o


Sujet :

C

  1. #1
    Futur Membre du Club
    Inscrit en
    Juin 2007
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 9
    Points : 5
    Points
    5
    Par défaut undefined reference lors de la compilation des .o
    Voila, je fait un projet qui contient plusieurs modules.
    Chaque module compile séparément et produit un .o .
    Maintenant je voudrais creer un programme de test qui utilise ces .o .

    Et la j'ai des erreur de compilation.

    les modules qui avaient compilés précédemment me sortent des :

    npdu.o: In function `Priorite_N_PDU':
    /home/arover/Langage_c/CN3/dev/npdu.c:34: undefined reference to `element'
    npdu.o: In function `Label_N_PDU':
    /home/arover/Langage_c/CN3/dev/npdu.c:42: undefined reference to `element'
    /home/arover/Langage_c/CN3/dev/npdu.c:43: undefined reference to `element'
    /home/arover/Langage_c/CN3/dev/npdu.c:44: undefined reference to `element'
    /home/arover/Langage_c/CN3/dev/npdu.c:45: undefined reference to `element'
    npdu.o:/home/arover/Langage_c/CN3/dev/npdu.c:57: more undefined references to `element' follow
    lpdu.o: In function `verif_crc':
    /home/arover/Langage_c/CN3/dev/lpdu.c:83: undefined reference to `ou_exclu_chaine'
    reassembleur.o: In function `inserer_trame':
    /home/arover/Langage_c/CN3/dev/reassembleur.c:42: undefined reference to `concatener'

    toutes ces fonctions non trouvé sont toutes dans un module qui est inclus dans les modules qui me sortent des undefined référence.

    Voilà alors je n'attend pas que vous résolviez totalement mon problème (si vous pouvez, ne vous gênez surtout pas ) , je voudrais juste avoir des précisions sur la signification de "undefined reference" ...
    Apparemment ça vient pas du fait que j'include pas le module car de 1 j'ai inclus le module dont les références manque et de 2 si je n'inclus pas j'ai une autre erreur.
    Cela viendrai alors peu etre du makefile??? Mais la encore j'y ai inclus tout les .o de tous mes modules
    Merci de me dire alors ce qui produit exactement cette erreur.

    Il faut que je précise autre chose aussi, le header du module dont les références ne sont pas trouvés par les autres est encadré pas un #ifndef .
    Si je ne prend pas cette précaution certain types contenu dans ce module sont utilisés 2 fois.

    Arnaud

  2. #2
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 381
    Points : 41 582
    Points
    41 582
    Par défaut
    Erreur d'édition de lien (et non pas de compilation) : Typiquement, signifie qu'une fonction ou variable globale a été déclarée mais pas définie.

  3. #3
    Futur Membre du Club
    Inscrit en
    Juin 2007
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 9
    Points : 5
    Points
    5
    Par défaut
    Comment faire alors pour qu'il trouve le liens vers les fonctions et les types de ce module??

  4. #4
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 381
    Points : 41 582
    Points
    41 582
    Par défaut
    Es-tu sûr qu'elles sont bien définies et pas seulement déclarées ?

  5. #5
    Futur Membre du Club
    Inscrit en
    Juin 2007
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 9
    Points : 5
    Points
    5
    Par défaut
    c'est à dire? je ne comprend pas trop la nuance, cela pourrai venir du #ifndef (j'était en train de rajouté cette précision dans mon premier post quand tu a répondu)

  6. #6
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 381
    Points : 41 582
    Points
    41 582
    Par défaut
    Code déclaration : Sélectionner tout - Visualiser dans une fenêtre à part
    int f(void);
    Code définition : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    int f(void)
    {
       return 0;
    }
    Pour les variables globales : http://emmanuel-delahaye.developpez....s.htm#globales

  7. #7
    Futur Membre du Club
    Inscrit en
    Juin 2007
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 9
    Points : 5
    Points
    5
    Par défaut
    Merci beaucoup!!!! Maintenant je comprend pourquoi j'ai l'erreur , et il se trouve que c'est un truc tout bête. en copiant j'ai oublié de copier la nouvelle version d'un module. Ce qui fait que certaines fonctions n'étaient pas implémenté dans le .c . Merci de m'avoir expliqué la signification de l'erreur.

    Arnaud

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

Discussions similaires

  1. message d'erreur lors de la compil des pages JSP
    Par pcouas dans le forum Jasper
    Réponses: 0
    Dernier message: 06/08/2008, 16h30
  2. Soucis lors de la compilation des source Qcad avec mac os x 10.4
    Par Ethnolius dans le forum Développement OS X
    Réponses: 2
    Dernier message: 20/05/2007, 10h57
  3. Undefined reference compilation réseau
    Par Ren97 dans le forum Dev-C++
    Réponses: 11
    Dernier message: 08/03/2005, 09h46
  4. Compilation de xmms : undefined reference to...
    Par Michaël dans le forum Applications et environnements graphiques
    Réponses: 4
    Dernier message: 04/02/2005, 19h05

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