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

Systèmes de compilation Discussion :

probleme de makefile


Sujet :

Systèmes de compilation

  1. #1
    Membre habitué Avatar de semaj_james
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    193
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 193
    Points : 139
    Points
    139
    Par défaut probleme de makefile
    Bonjour,

    J'ai cree un makefile mais j'ai une erreur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    make: *** Pas de règle pour fabriquer la cible « globales.h », nécessaire pour « main_lex.o ». Arrêt.
    Qu'est ce qui ne va pas ? J'ai pourtant indiqué où il devait aller chercher les fichier.h avec -I ../fic.h
    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
     
    .PHONY:	clean
     
    #liste de tous les fichiers .o
    OBJECTS= main_lex.o analex.o lexical.o 
     
    CFLAGS= -g -W -Wall
    CC= gcc
     
    NOM_EX= lexicale
    NOM= main_lex
    NOM1= analex
    NOM2= lexical
     
    # Tous les executables
    all: $(NOM_EX) 
     
     
    # Executable : 
    $(NOM_EX): $(OBJECTS)
    	$(CC) $(CFLAGS) -I ../fic.h -o $(NOM_EX) $(OBJECTS)
     
     
    # Compilation separee des fichiers ( .c -> .o )
     
    # main_lex
    $(NOM).o: $(NOM).c globales.h ana_lexical.h
    	$(CC) $(CFLAGS) -c $(NOM).c
     
    # analex
    $(NOM1).o: $(NOM1).c globales.h ana_lexical.h
    	$(CC) $(CFLAGS) -c $(NOM1).c
     
    # lexical
    $(NOM2).o: $(NOM2).c globales.h ana_lexical.h
    	$(CC) $(CFLAGS) -c $(NOM2).c
     
    # Nettoyage
    clean:
    	rm -f *.o

  2. #2
    Expert éminent sénior

    Avatar de fearyourself
    Homme Profil pro
    Ingénieur Informaticien Senior
    Inscrit en
    Décembre 2005
    Messages
    5 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Ingénieur Informaticien Senior
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2005
    Messages : 5 121
    Points : 11 877
    Points
    11 877
    Par défaut
    Premièrement les lignes de ton makefile qui posent problème est:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    # main_lex
    $(NOM).o: $(NOM).c globales.h ana_lexical.h
       $(CC) $(CFLAGS) -c $(NOM).c
    Cela veut dire qu'il ne trouve pas tes fichiers .h.

    Deuxièmement, tu peux utiliser -I mais c'est pour donner le chemin vers un répertoire... Pas vers un fichier...

    Jc

Discussions similaires

  1. probleme de makefile
    Par calagan dans le forum C
    Réponses: 8
    Dernier message: 01/09/2007, 13h08
  2. [débutant]probleme avec makefile-module objet non créé
    Par Invité dans le forum Systèmes de compilation
    Réponses: 5
    Dernier message: 13/06/2007, 18h22
  3. probleme de makefile
    Par felicity dans le forum Systèmes de compilation
    Réponses: 3
    Dernier message: 23/05/2006, 13h15
  4. Probleme de makefile
    Par realmadrid dans le forum Systèmes de compilation
    Réponses: 2
    Dernier message: 11/01/2006, 16h47
  5. Probleme de Makefile
    Par hoeg dans le forum Systèmes de compilation
    Réponses: 3
    Dernier message: 31/03/2005, 19h01

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