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 :

Mon premier Makefile : quelques soucis


Sujet :

C++

  1. #1
    Membre actif
    Avatar de odsen.s
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    269
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 269
    Points : 243
    Points
    243
    Par défaut Mon premier Makefile : quelques soucis
    Bonjour à tous,

    Pour un projet en C++, j'ai créé mon premier Makefile à l'aide du tutoriel de developpez.com qui est très bien fait. Cependant, après plusieurs heures de recherche je ne comprends toujours pas la source de mon problème.
    En effet, tout compile avec g++ lorsque je n'utilise pas le Makefile, j'ai pensé que cela venait des dépendances (.h), apparemment non. Auriez-vous une idée ?

    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
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    CC=g++
     
    EXEC=af2j
    CFLAGS=-W -Wall -ansi -pedantic
     
     
     
    all: $(EXEC)
     
     
     
    af2j: main.o menus.o ihm_fonctions.o Projet.o CommonFunctions.o Texte.o Editeur.o DicoBalises.o Convertisseur.o
     
    	$(CC) -o $@ $^ $(LDFLAGS)
     
     
     
    # IHM	
     
    main.o: main.cpp ihm_fonctions.h menus.h CommonFunctions.h Projet.h
     
    	$(CC) -o $@ $< $(LDFLAGS)
     
    menus.o: menus.cpp menus.h CommonFunctions.h Projet.h
    	$(CC) -o $@ $< $(LDFLAGS)
     
    ihm_fonction.o: ihm_fonctions.cpp ihm_fonctions.h CommonFunctions.h Projet.h
    	$(CC) -o $@ $< $(LDFLAGS)
     
     
     
    # Gestion de projet
     
    Projet.o: Projet.cpp Projet.h Texte.h Fichier.h FileError.h
     
    	$(CC) -o $@ $< $(LDFLAGS)
     
     
     
    CommonFunctions.o: CommonFunctions.cpp CommonFunctions.h Projet.h Texte.h Fichier.h FileError.h
     
    	$(CC) -o $@ $< $(LDFLAGS)
     
     
     
    Texte.o: Texte.cpp Texte.h Fichier.h FileError.h
     
    	$(CC) -o $@ $< $(LDFLAGS)
     
     
    # Gestion de l'éditeur
    Editeur.o: Editeur.cpp Editeur.h
    	$(CC) -o $@ $< $(LDFLAGS)
     
     
     
    # Convertisseur
    DicoBalises.o: DicoBalises.cpp DicoBalises.h
    	$(CC) -o $@ $< $(LDFLAGS)
     
    Convertisseur.o: Convertisseur.cpp Convertisseur.h DicoBalises.h Texte.h FileError.h
    	$(CC) -o $@ $< $(LDFLAGS)
     
     
     
    clean:
     
    	rm -f main.o menus.o ihm_fonctions.o Projet.o CommonFunctions.o Texte.o Editeur.o DicoBalises.o Convertisseur.o
    L'erreur retournée par g++ est :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    g++ -o main.o main.cpp 
    /tmp/cctIrv8e.o: In function `main':
    main.cpp:(.text+0x7): undefined reference to `MenuPrincipal()'
    collect2: ld returned 1 exit status
    make: *** [main.o] Erreur 1
    zsh: exit 2     make
    Je précise que la fonction MenuPrincipal() est la première fonction appelée dans le fichier main.cpp, et qu'elle est déclarée dans menus.h qui est bien inclus dans main.cpp.

    Merci d'avance

  2. #2
    Expert éminent

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Points : 6 911
    Points
    6 911
    Par défaut
    Et elle est définie où? Ce n'est pas la déclaration qui manque (tu aurais eu une erreur à la compilation, pas à l'édition de liens).
    Les MP ne sont pas là pour les questions techniques, les forums sont là pour ça.

  3. #3
    Membre actif
    Avatar de odsen.s
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    269
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 269
    Points : 243
    Points
    243
    Par défaut
    Elle est définie dans menu.cpp

  4. #4
    Expert éminent

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Points : 6 911
    Points
    6 911
    Par défaut
    Il manque un -c quand tu fais les .o (il ne ne faut pas pour faire l'exec).
    Les MP ne sont pas là pour les questions techniques, les forums sont là pour ça.

  5. #5
    Membre actif
    Avatar de odsen.s
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2006
    Messages
    269
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2006
    Messages : 269
    Points : 243
    Points
    243
    Par défaut
    Merci beaucoup, c'est bien ça qu'il manquait.

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

Discussions similaires

  1. Problème de règle dans mon premier Makefile
    Par abel413 dans le forum Linux
    Réponses: 0
    Dernier message: 11/03/2015, 15h49
  2. [JSF] mon premier JSF:Cannot find FacesContext
    Par anitshka dans le forum JSF
    Réponses: 15
    Dernier message: 24/08/2007, 18h19
  3. Mon premier soucis avec wxWidgets (wxComboBox)
    Par mister3957 dans le forum wxWidgets
    Réponses: 3
    Dernier message: 23/02/2006, 10h58
  4. [Swings]Quelques soucis à l'affichage !
    Par julienOriano dans le forum AWT/Swing
    Réponses: 3
    Dernier message: 23/09/2004, 13h22
  5. quelques soucis avec word 2000
    Par ramchou dans le forum Word
    Réponses: 3
    Dernier message: 06/09/2004, 18h13

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