erreur compilation aide
Répondre à la discussion
Affichage des résultats 1 à 8 sur 8

erreur compilation aide



  1. #1
    slobodan

    erreur compilation aide


    ------

    Salut tt le monde
    je suis en cours de développer un code pour mon robot en utilisant OSA RTOS avec le compilateur mikro c pro.
    Lors de la compilation on m'affiche ce message d’erreur : "Unresolved extern 'LireClav' Myproject.c"
    pouvez m'expliquer de quoi s'agit cette erreur et comment la corriger?

    -----

  2. #2
    grosmatou75001

    Re : erreur compilation aide

    OSA RTOS avec le compilateur mikro c pro.
    Je ne connais ni l'un ni l'autre, mais ceci
    "Unresolved extern 'LireClav' Myproject.c"
    c'est le linker qui se plaint qu'il ne trouve pas la fonction LireClav(). Alors deux posibilités:
    1. Tu as le code source de la fonction, dans ce cas rajoute le fichier le contenant à ton projet pour qu'il soit compilé avec tout le reste.
    2. Tu n'as pas le code source mais une bibliothèque précompilée, dans ce cas il faut modifier la commande pour le linker en lui disant de prendre en compte cette bibliothèque.

  3. #3
    slobodan

    Re : erreur compilation aide

    j'ai defini ma fonction LireClav dans le fichier .c puis je l'ai appelée dans le .h qui est a son tour inclue dans le main mais l'erreur est encore la.


  4. #4
    grosmatou75001

    Re : erreur compilation aide

    j'ai defini ma fonction LireClav dans le fichier .c
    Quel fichier? Celui où se trouve tout le reste du code? Tu en as combien de fichiers en tout? Montre donc ton projet si c'est possible (p.ex. en zippant le tout puis en le chargeant sur le serveur fs), parce que ça
    puis je l'ai appelée dans le .h
    je ne comprends pas trop. Normalement dans un fichier .h on trouve des prototypes, pas des appels à fonction. Alors soit c'est juste un malentendu soit tu as mal fait...

  5. A voir en vidéo sur Futura
  6. #5
    slobodan

    Re : erreur compilation aide

    voila c'est mon code avec tt les fichiers
    Fichiers attachés Fichiers attachés

  7. #6
    grosmatou75001

    Re : erreur compilation aide

    Dans clavier.h, qu'est ce c'est que ça?
    #include <clavier.c>
    A virer, faire un project clean puis recompiler.

  8. #7
    grosmatou75001

    Re : erreur compilation aide

    Bon, une autre chose qui me saute aux yeux: Qu'est ce c'est que toutes ces variables static dans les headers? On se retrouve du coup avec pleins de variables globales internes (car static) inutilisées dans tout les fichiers *.c, p.ex. dans MyProject.c tu inclus IR.h ce qui est correct, mais en même temps cela créé les variables DistanceMin, CurrentDist etc. dans MyProject.c alors que tu en as nullement besoin. Le compilateur C traite chaque fichier .c séparément, c'est le linker qui assemble les bouts. Dans l'état actuel tu as p.ex. une variable distincte CurrentDist (IR.h) dans chaque fichier C. Comme tu as mis du static partout il s'agit de variables internes au fichier, le linker ne les voie pas et donc ne produit pas d'érreurs "redefinition..." et ça pourrais marcher comme ça, mais pour moi c'est du bricolage.
    Dans les headers on ne mets que les déclarations de variables globales [u]externes (c'est à dire non static), tout le reste (définition de variables globales, définition de globales static et variables locales) va dans le fichier .c. Je ne suis pas sûr que ça soit ça le problème mais en tout cas ce n'est pas très propre je trouve... Ah oui, les variables globales de manière générale (surtout non static) sont à utiliser avec modération, il existe aussi des variables locales, inutile de tout mettre en global.

    Pfff, en relisant j'ai l'impression d'avoir écrit du vrai charabia...

  9. #8
    slobodan

    Re : erreur compilation aide

    pour include<clavier.c> c'est juste un lors que rien ne marche j'ai oublier de le supprimer :P

Discussions similaires

  1. C++: Erreur durant la compilation
    Par sylvain6120 dans le forum Programmation et langages, Algorithmique
    Réponses: 2
    Dernier message: 06/10/2012, 12h03
  2. Erreur de compilation IAR
    Par invite5458c417 dans le forum Électronique
    Réponses: 7
    Dernier message: 20/06/2012, 22h57
  3. Erreur de compilation
    Par invite339a0de8 dans le forum Programmation et langages, Algorithmique
    Réponses: 4
    Dernier message: 10/04/2012, 12h16
  4. erreur de compilation
    Par r_systeme dans le forum Électronique
    Réponses: 3
    Dernier message: 18/07/2011, 07h59
  5. erreur compilation
    Par inviteb7a0f269 dans le forum Électronique
    Réponses: 2
    Dernier message: 22/06/2010, 14h20