Partage
  • Partager sur Facebook
  • Partager sur Twitter

Erreur de compilation

Programme tout con

Sujet résolu
    26 mars 2010 à 16:07:40

    Salut à tous,

    J'ai un problème avec un programme qui provoquent des erreurs de compilation que je ne comprends pas.

    Voici le programme :

    #include <stdlib.h>
    #include <stdio.h>
    #include <trainsim/ctrain_handler.h>
    
    int main(void){
    	init_maquette();
    
    	mettre_maquette_hors_service();
    
    	return(EXIT_SUCCESS);
    
    
    }
    


    Le deux fonctions init_maquette() et mettre_maquette_hors_service() viennent d'une librairie que j'ai développée et qui fonctionne parfaitement.

    Lors de la compilation (avec Eclipse, sous Ubuntu 9.10), ce programme, qui me semble-t-il devrait fonctionner, provoque les erreus suivantes :

    **** Build of configuration Debug for project exempletrainsim ****
    
    make all 
    Building file: ../main.c
    Invoking: GCC C Compiler
    gcc -D_REENTRANT -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF"main.d" -MT"main.d" -o"main.o" "../main.c"
    ../main.c:1: error: stray ‘\376’ in program
    ../main.c:1: error: stray ‘\377’ in program
    ../main.c:1:3: warning: null character(s) ignored
    ../main.c:1: error: stray ‘#’ in program
    ../main.c:1:5: warning: null character(s) ignored
    ../main.c:1:7: warning: null character(s) ignored
    ../main.c:1: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘n’
    ../main.c:1:9: warning: null character(s) ignored
    ../main.c:1:11: warning: null character(s) ignored
    ../main.c:1:13: warning: null character(s) ignored
    ../main.c:1:15: warning: null character(s) ignored
    ../main.c:1:17: warning: null character(s) ignored
    ../main.c:1:19: warning: null character(s) ignored
    ../main.c:1:23: warning: null character(s) ignored
    ../main.c:1:25: warning: null character(s) ignored
    ../main.c:1:27: warning: null character(s) ignored
    ../main.c:1:29: warning: null character(s) ignored
    ../main.c:1:31: warning: null character(s) ignored
    ../main.c:1:33: warning: null character(s) ignored
    ../main.c:1:35: warning: null character(s) ignored
    ../main.c:1:37: warning: null character(s) ignored
    ../main.c:1:39: warning: null character(s) ignored
    ../main.c:1:41: warning: null character(s) ignored
    ../main.c:2:1: warning: null character(s) ignored
    ../main.c:2:3: warning: null character(s) ignored
    ../main.c:2:4: error: invalid preprocessing directive #i
    ../main.c:2:5: warning: null character(s) ignored
    ../main.c:2:7: warning: null character(s) ignored
    ../main.c:2:9: warning: null character(s) ignored
    ../main.c:2:11: warning: null character(s) ignored
    ../main.c:2:13: warning: null character(s) ignored
    ../main.c:2:15: warning: null character(s) ignored
    ../main.c:2:17: warning: null character(s) ignored
    ../main.c:2:21: warning: null character(s) ignored
    ../main.c:2:23: warning: null character(s) ignored
    ../main.c:2:25: warning: null character(s) ignored
    ../main.c:2:27: warning: null character(s) ignored
    ../main.c:2:29: warning: null character(s) ignored
    ../main.c:2:31: warning: null character(s) ignored
    ../main.c:2:33: warning: null character(s) ignored
    ../main.c:2:35: warning: null character(s) ignored
    ../main.c:2:37: warning: null character(s) ignored
    ../main.c:3:1: warning: null character(s) ignored
    ../main.c:3:3: warning: null character(s) ignored
    ../main.c:3:4: error: invalid preprocessing directive #i
    ../main.c:3:5: warning: null character(s) ignored
    ../main.c:3:7: warning: null character(s) ignored
    ../main.c:3:9: warning: null character(s) ignored
    ../main.c:3:11: warning: null character(s) ignored
    ../main.c:3:13: warning: null character(s) ignored
    ../main.c:3:15: warning: null character(s) ignored
    ../main.c:3:17: warning: null character(s) ignored
    ../main.c:3:21: warning: null character(s) ignored
    ../main.c:3:23: warning: null character(s) ignored
    ../main.c:3:25: warning: null character(s) ignored
    ../main.c:3:27: warning: null character(s) ignored
    ../main.c:3:29: warning: null character(s) ignored
    ../main.c:3:31: warning: null character(s) ignored
    ../main.c:3:33: warning: null character(s) ignored
    ../main.c:3:35: warning: null character(s) ignored
    ../main.c:3:37: warning: null character(s) ignored
    ../main.c:3:39: warning: null character(s) ignored
    ../main.c:3:41: warning: null character(s) ignored
    ../main.c:3:43: warning: null character(s) ignored
    ../main.c:3:45: warning: null character(s) ignored
    ../main.c:3:47: warning: null character(s) ignored
    ../main.c:3:49: warning: null character(s) ignored
    ../main.c:3:51: warning: null character(s) ignored
    ../main.c:3:53: warning: null character(s) ignored
    ../main.c:3:55: warning: null character(s) ignored
    ../main.c:3:57: warning: null character(s) ignored
    ../main.c:3:59: warning: null character(s) ignored
    ../main.c:3:61: warning: null character(s) ignored
    ../main.c:3:63: warning: null character(s) ignored
    ../main.c:3:65: warning: null character(s) ignored
    ../main.c:3:67: warning: null character(s) ignored
    ../main.c:3:69: warning: null character(s) ignored
    ../main.c:3:71: warning: null character(s) ignored
    ../main.c:3:73: warning: null character(s) ignored
    ../main.c:4:1: warning: null character(s) ignored
    ../main.c:5:1: warning: null character(s) ignored
    ../main.c:5:3: warning: null character(s) ignored
    ../main.c:5:5: warning: null character(s) ignored
    ../main.c:5:7: warning: null character(s) ignored
    ../main.c:5:11: warning: null character(s) ignored
    ../main.c:5:13: warning: null character(s) ignored
    ../main.c:5:15: warning: null character(s) ignored
    ../main.c:5:17: warning: null character(s) ignored
    ../main.c:5:19: warning: null character(s) ignored
    ../main.c:5:21: warning: null character(s) ignored
    ../main.c:5:23: warning: null character(s) ignored
    ../main.c:5:25: warning: null character(s) ignored
    ../main.c:5:27: warning: null character(s) ignored
    ../main.c:5:29: warning: null character(s) ignored
    ../main.c:5:31: warning: null character(s) ignored
    ../main.c:6:1: warning: null character(s) ignored
    ../main.c:6:5: warning: null character(s) ignored
    ../main.c:6:7: warning: null character(s) ignored
    ../main.c:6:9: warning: null character(s) ignored
    ../main.c:6:11: warning: null character(s) ignored
    ../main.c:6:13: warning: null character(s) ignored
    ../main.c:6:15: warning: null character(s) ignored
    ../main.c:6:17: warning: null character(s) ignored
    ../main.c:6:19: warning: null character(s) ignored
    ../main.c:6:21: warning: null character(s) ignored
    ../main.c:6:23: warning: null character(s) ignored
    ../main.c:6:25: warning: null character(s) ignored
    ../main.c:6:27: warning: null character(s) ignored
    ../main.c:6:29: warning: null character(s) ignored
    ../main.c:6:31: warning: null character(s) ignored
    ../main.c:6:33: warning: null character(s) ignored
    ../main.c:6:35: warning: null character(s) ignored
    ../main.c:7:1: warning: null character(s) ignored
    ../main.c:8:1: warning: null character(s) ignored
    ../main.c:8:5: warning: null character(s) ignored
    ../main.c:8:7: warning: null character(s) ignored
    ../main.c:8:9: warning: null character(s) ignored
    ../main.c:8:11: warning: null character(s) ignored
    ../main.c:8:13: warning: null character(s) ignored
    ../main.c:8:15: warning: null character(s) ignored
    ../main.c:8:17: warning: null character(s) ignored
    ../main.c:8:19: warning: null character(s) ignored
    ../main.c:8:21: warning: null character(s) ignored
    ../main.c:8:23: warning: null character(s) ignored
    ../main.c:8:25: warning: null character(s) ignored
    ../main.c:8:27: warning: null character(s) ignored
    ../main.c:8:29: warning: null character(s) ignored
    ../main.c:8:31: warning: null character(s) ignored
    ../main.c:8:33: warning: null character(s) ignored
    ../main.c:8:35: warning: null character(s) ignored
    ../main.c:8:37: warning: null character(s) ignored
    ../main.c:8:39: warning: null character(s) ignored
    ../main.c:8:41: warning: null character(s) ignored
    ../main.c:8:43: warning: null character(s) ignored
    ../main.c:8:45: warning: null character(s) ignored
    ../main.c:8:47: warning: null character(s) ignored
    ../main.c:8:49: warning: null character(s) ignored
    ../main.c:8:51: warning: null character(s) ignored
    ../main.c:8:53: warning: null character(s) ignored
    ../main.c:8:55: warning: null character(s) ignored
    ../main.c:8:57: warning: null character(s) ignored
    ../main.c:8:59: warning: null character(s) ignored
    ../main.c:8:61: warning: null character(s) ignored
    ../main.c:8:63: warning: null character(s) ignored
    ../main.c:8:65: warning: null character(s) ignored
    ../main.c:9:1: warning: null character(s) ignored
    ../main.c:10:1: warning: null character(s) ignored
    ../main.c:10:5: warning: null character(s) ignored
    ../main.c:10:7: warning: null character(s) ignored
    ../main.c:10:9: warning: null character(s) ignored
    ../main.c:10:11: warning: null character(s) ignored
    ../main.c:10:13: warning: null character(s) ignored
    ../main.c:10:15: warning: null character(s) ignored
    ../main.c:10:17: warning: null character(s) ignored
    ../main.c:10:19: warning: null character(s) ignored
    ../main.c:10:21: warning: null character(s) ignored
    ../main.c:10:23: warning: null character(s) ignored
    ../main.c:10:25: warning: null character(s) ignored
    ../main.c:10:27: warning: null character(s) ignored
    ../main.c:10:29: warning: null character(s) ignored
    ../main.c:10:31: warning: null character(s) ignored
    ../main.c:10:33: warning: null character(s) ignored
    ../main.c:10:35: warning: null character(s) ignored
    ../main.c:10:37: warning: null character(s) ignored
    ../main.c:10:39: warning: null character(s) ignored
    ../main.c:10:41: warning: null character(s) ignored
    ../main.c:10:43: warning: null character(s) ignored
    ../main.c:10:45: warning: null character(s) ignored
    ../main.c:11:1: warning: null character(s) ignored
    ../main.c:12:1: warning: null character(s) ignored
    ../main.c:13:1: warning: null character(s) ignored
    ../main.c:13:3: warning: null character(s) ignored
    make: *** [main.o] Erreur 1


    Ca fait un moment que je suis sur le problème, peut être qu'un oeil extérieur m'aidera à y voir plus clair.

    Merci d'avance pour votre aide :)
    • Partager sur Facebook
    • Partager sur Twitter
      26 mars 2010 à 16:18:51

      Bonjour,

      Pourquoi mets-tu un void en paramètre de ta fonction main ?
      • Partager sur Facebook
      • Partager sur Twitter
        26 mars 2010 à 16:22:58

        Citation : djidi6

        Bonjour,

        Pourquoi mets-tu un void en paramètre de ta fonction main ?


        Que devrait-il mettre ?

        Bon après je sais pas tellement où est le problème...
        Vu comme ça, ça me paraît être une erreur dans l'encodage du fichier source.
        • Partager sur Facebook
        • Partager sur Twitter
          26 mars 2010 à 16:24:49

          Bah moi j'aurais rien mis du tout. :euh:
          • Partager sur Facebook
          • Partager sur Twitter
            26 mars 2010 à 16:26:50

            Citation : djidi6

            Bah moi j'aurais rien mis du tout. :euh:


            Pas bien...
            • Partager sur Facebook
            • Partager sur Twitter
              26 mars 2010 à 16:27:18

              Nouveau problème -> Nouveau topic. ;)
              • Partager sur Facebook
              • Partager sur Twitter
                26 mars 2010 à 16:29:48

                hum, tu n'aurais pas fais un copier coller qui serait mal passé ?
                (et qui t'aurait inclus des caracteres bizarres ?)
                • Partager sur Facebook
                • Partager sur Twitter
                  26 mars 2010 à 16:32:26

                  Citation : Merkil

                  Vu comme ça, ça me paraît être une erreur dans l'encodage du fichier source.


                  Oui, les deux premiers caractères, '\376' et '\377', soit 0xFE et 0xFF, me semblent être les http://en.wikipedia.org/wiki/Byte_order_mark d'un fichier UTF-16. Il me semble qu'UTF-16 expliquerait aussi tous les caractères nuls.
                  • Partager sur Facebook
                  • Partager sur Twitter
                    26 mars 2010 à 18:13:03

                    Citation : hibalum

                    hum, tu n'aurais pas fais un copier coller qui serait mal passé ?
                    (et qui t'aurait inclus des caracteres bizarres ?)



                    Effectivement, au départ j'avais fait un copié-collé, et j'ai recopié mon programme à la main, ce qui n'a pas résolu le problème.

                    Pour ce qui est de l'encodage, c'est quelque chose qu'il faut régler dans la config de l'IDE ??

                    EDIT : Effectivement, le problème venait bien de l'encodage du fichier, il m'a suffit de passer d'UTF8 à UTF16. Pour info, ca se fait dans les paramètres du projet sous Eclipse.

                    Merci à tous pour votre aide :)
                    • Partager sur Facebook
                    • Partager sur Twitter

                    Erreur de compilation

                    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                    • Editeur
                    • Markdown