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 :

Problème exécution programme


Sujet :

C

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Mai 2008
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 5
    Points : 1
    Points
    1
    Par défaut Problème exécution programme
    Bonjour,

    alors voici mon probleme :
    une fois la compilation terminée, j'exécute mon programme et il m'affiche plein d'erreurs :

    sophie@debian:~/Mini projet prog Systeme bis$./proc_init.c 2 1 3 5
    ./proc_init.c: line 1: /********************************************************: Aucun fichier ou répertoire de ce type
    ./proc_init.c: line 2: chef.c: command not found
    ./proc_init.c: line 3: chef.c: command not found
    ./proc_init.c: line 4: chef.c: command not found
    ./proc_init.c: line 5: chef.c: command not found
    ./proc_init.c: line 6: chef.c: command not found
    ./proc_init.c: line 7: chef.c: command not found
    ./proc_init.c: line 8: chef.c: command not found
    ./proc_init.c: line 9: chef.c: command not found
    ./proc_init.c: line 10: chef.c: command not found
    ./proc_init.c: line 11: ********************************************************: Aucun fichier ou répertoire de ce type
    ./proc_init.c: line 13: /*Processus: Aucun fichier ou répertoire de ce type
    : command not found 27:
    : command not found 29:
    : command not found 30:
    ./proc_init.c: line 31: struct: command not found
    ./proc_init.c: line 32: long: command not found
    ./proc_init.c: line 32: /bin: is a directory
    ./proc_init.c: line 33: long: command not found
    : command not found 33:
    ./proc_init.c: line 34: int: command not found
    ./proc_init.c: line 35: int: command not found
    : command not found 35:
    ./proc_init.c: line 36: int: command not found
    : command not found 36:
    ./proc_init.c: line 37: int: command not found
    : command not found 37:
    ./proc_init.c: line 38: int: command not found
    ./proc_init.c: line 39: syntax error near unexpected token `}'
    '/proc_init.c: line 39: ` } envoi_msg;
    de la ligne 2 à 11, c'est un commentaire, mais chef.c n'y figure pas !!!! :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    /*******************************************************
    * MINI-PROJET PROGRAMMATION SYSTEME EN C SOUS UNIX                *
    *                                                                      *
    * Auteurs :      Sophie                                                        *
    *                Hoan Kiem                                                                                                        *
    *                                                                       *
    * 12/05/2008                                                             *
    *                                                                      *
    * Version 1.1                                                              *
    *                                                                      *
    ********************************************************/
     
    puis vient les déclarations des structures : 
    /*Processus Initial*/
     
    #include<sys/types.h>
    #include<fcntl.h>
    #include<unistd.h>
    #include<string.h>
    #include<stdio.h>
    #include<stdlib.h>
    #include<sys/signal.h>
    #include<sys/wait.h>
    #include<sys/msg.h>
    #include<ipc.h>
    #include<sem.h>
    #include<wait.h>
    #include<sys/stat.h>
     
    #define MSGKEY 50
     
    struct msg_struct2 {
          long mtype;        /* pid du mecano */
          long tps;
          int nat;
          int cat1;
          int cat2;
          int cat3;
          int cat4; 
        } envoi_msg;
     
    struct msg_struct {
        long mtype;
        int information;
        }msg_recu;
    Je ne vois pas du tout ce qui cloche
    Merci de votre aide

    Nana7

  2. #2
    Membre éclairé Avatar de crocodilex
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    697
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 697
    Points : 858
    Points
    858
    Par défaut
    Si tu essayes d'exécuter un fichier source, forcement ça risque de ne pas marcher.
    Software Failure. Press left mouse button to continue.
    Guru Meditation #0100000C.000FE800

  3. #3
    Nouveau Candidat au Club
    Inscrit en
    Mai 2008
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 5
    Points : 1
    Points
    1
    Par défaut probleme execution programme
    Mais même en executant avec
    ./proc_init 2 1 3 5, ça ne marche pas

  4. #4
    Membre éclairé Avatar de crocodilex
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    697
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 697
    Points : 858
    Points
    858
    Par défaut
    Difficile de t'aider avec si peu d'info.
    Est-ce que la compilation se passe bien ?
    Montres nous la commande de compilation et si possible le source avec lequel tu as des soucis.
    Software Failure. Press left mouse button to continue.
    Guru Meditation #0100000C.000FE800

  5. #5
    Membre régulier
    Inscrit en
    Décembre 2005
    Messages
    225
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 225
    Points : 113
    Points
    113
    Par défaut
    écris ceci dans un terminal et envoie le résultat ( ainsi que le code source ) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    gcc proc_init.c -o proc_init
    Puis, sans fonction "main", ce n'est pas un miracle si le binaire produit ne marche pas ( et puis là, tu essaies d'executer un fichier source ... ) .
    Forum Programmation d'OS - Tutoriel pour créer un petit noyau 32 bits .

    ( le développement de littlefoot86 est abandonné ... )

  6. #6
    Nouveau Candidat au Club
    Inscrit en
    Mai 2008
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 5
    Points : 1
    Points
    1
    Par défaut probleme execution programme
    La compilation se passe bien
    sophie@debian:~/Mini projet prog Systeme bis$gcc -c proc_init.c
    sophie@debian:~/Mini projet prog Systeme bis$gcc -o proc_init -c proc_init.c

    Je joins le fichier source
    proc_init.c

  7. #7
    Membre régulier
    Inscrit en
    Décembre 2005
    Messages
    225
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 225
    Points : 113
    Points
    113
    Par défaut
    EDIT : ah oui t'as bien la fonction main, difficile à trouver vu l'indentation :p

    Normal que ton code ne marche pas, il faut que le code à éxecuter soit à l'interieur de la fonction "main" !

    Par défaut, quand tu compiles un programme en C, et que le role du linkeur LD intervient, il suppose que le point de départ est "main", donc quand tu executes le binaire produit, le système saute directement vers ce point de départ, ce qui veut dire que sans "main" ( ce qui est ton cas ), ton programme ne marche pas .
    Forum Programmation d'OS - Tutoriel pour créer un petit noyau 32 bits .

    ( le développement de littlefoot86 est abandonné ... )

  8. #8
    Membre régulier
    Inscrit en
    Décembre 2005
    Messages
    225
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 225
    Points : 113
    Points
    113
    Par défaut
    ipc.h et sem.h sont manquants ... par contre si la compilation se déroule bien chez toi, tu peux décrire un peu plus le genre de problèmes que tu rencontres ?
    Forum Programmation d'OS - Tutoriel pour créer un petit noyau 32 bits .

    ( le développement de littlefoot86 est abandonné ... )

  9. #9
    Nouveau Candidat au Club
    Inscrit en
    Mai 2008
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 5
    Points : 1
    Points
    1
    Par défaut probleme execution programme
    Le main est bien présent :
    int main (int nb_argc, char *argv[])

    La déclaration des structures se fait bien en dehors du main(), ou alors je n'y comprends plus rien

  10. #10
    Nouveau Candidat au Club
    Inscrit en
    Mai 2008
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 5
    Points : 1
    Points
    1
    Par défaut probleme execution programme
    les erreurs qu'il m'affiche ont été données lors du premier message

  11. #11
    Membre éclairé Avatar de crocodilex
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    697
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 697
    Points : 858
    Points
    858
    Par défaut
    Citation Envoyé par nana7 Voir le message
    Mais même en executant avec
    ./proc_init 2 1 3 5, ça ne marche pas
    Quel est le message d'erreur ?
    Software Failure. Press left mouse button to continue.
    Guru Meditation #0100000C.000FE800

  12. #12
    Membre éclairé Avatar de crocodilex
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    697
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 697
    Points : 858
    Points
    858
    Par défaut
    Citation Envoyé par nana7 Voir le message
    Mais même en executant avec
    ./proc_init 2 1 3 5, ça ne marche pas
    D'après ton code, le main() attend 6 arguments (commande comprise) et non pas 5....
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
        if (nb_argc!=6)
        {
            write(STDERR_FILENO, "5 arguments svp\n",23);
            exit(2);
        }
    Software Failure. Press left mouse button to continue.
    Guru Meditation #0100000C.000FE800

  13. #13
    Membre éclairé Avatar de crocodilex
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    697
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 697
    Points : 858
    Points
    858
    Par défaut
    Juste pour te mettre sur la piste, lorsque tu tapes la commandes :
    le tableau de chaine argv contient :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    argv[0] = "proc_init"
    argv[1] = "2"
    argv[2] = "1"
    argv[3] = "3"
    argv[4] = "5"
    Software Failure. Press left mouse button to continue.
    Guru Meditation #0100000C.000FE800

Discussions similaires

  1. Réponses: 7
    Dernier message: 24/11/2011, 16h01
  2. Problème d'exécution programme Java
    Par cocorico88 dans le forum Général Java
    Réponses: 3
    Dernier message: 16/11/2009, 09h38
  3. Réponses: 3
    Dernier message: 26/12/2008, 08h57
  4. problème exécution programme compilé
    Par docteurbunny dans le forum Linux
    Réponses: 35
    Dernier message: 18/11/2008, 11h38
  5. Problème exécution d'un programme C sous Xcode
    Par kubiak014 dans le forum Autres éditeurs
    Réponses: 0
    Dernier message: 11/11/2008, 12h42

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