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 avec un makefile


Sujet :

C

  1. #1
    Invité
    Invité(e)
    Par défaut Problème avec un makefile
    Bonjour,

    Je vous présente mon problème.

    Je suis en train de faire un jeux à l'aide de la librairie allegro. J'ai jusqu'à présent travaillé sur Windows mais j'ai voulu passer sur Linux. Je voudrais utiliser un makefile pour pouvoir me passer d'IDE.

    J'ai le makefile suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    jeux: affichage.o chargements.o main.o
    	gcc -o jeux affichage.o chargements.o main.o
     
    affichage.o: affichage.c
    	gcc -o affichage.o -c affichage.c `allegro-config --libs` -W -Wall -ansi -pedantic
     
    chargements.o: chargements.c
    	gcc -o chargements.o -c chargements.c `allegro-config --libs` -W -Wall -ansi -pedantic
     
    main.o: main.c affichage.h chargements.h
    	gcc -o main.o -c main.c `allegro-config --libs` -W -Wall -ansi -pedantic
    Mais j'ai plein d'erreurs du genre "undefines reference to ..." (des fonctions d'allegro).

    J'ai fais un test avec un fichier tout petit, celui-ci:

    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
    #include <stdio.h>
    #include <allegro.h>
     
    int main(){
     
    	allegro_init();
    	install_keyboard();
    	install_mouse();
    	set_color_depth(16);
    	set_gfx_mode(GFX_AUTODETECT, 640, 480, 0, 0);
     
     
     
    	return 0;
    }
    en compilant avec la commande suivante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    gcc -o jeux main.c `allegro-config --libs`
    et ça fonctionne.

    Auriez-vous une idée d'où vient le problème ?

  2. #2
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Septembre 2007
    Messages
    7 397
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 397
    Points : 23 761
    Points
    23 761
    Par défaut
    Montre-nous les avertissements en question. Il est possible qu'il s'agisse de références à des fonctions de packages spécialisés d'Allegro qui ne sont pas installés par défaut (pure hypothèse, je ne travaille pas avec)…

  3. #3
    Invité
    Invité(e)
    Par défaut
    Merci pour ta réponse.

    En fait il manquait simplement `allegro-config --libs` à la première commande de mon makefile.

    Résolu !

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

Discussions similaires

  1. Problème avec un makefile
    Par kimikou dans le forum C
    Réponses: 1
    Dernier message: 06/03/2011, 03h57
  2. Problème avec un makefile c++
    Par herzak dans le forum C++
    Réponses: 4
    Dernier message: 20/09/2010, 09h37
  3. Problème avec Makefile
    Par beb30 dans le forum Autres éditeurs
    Réponses: 1
    Dernier message: 02/03/2006, 15h02
  4. problème avec perl Makefile.PL
    Par flores dans le forum Modules
    Réponses: 2
    Dernier message: 30/10/2005, 19h09
  5. Problème avec makefile
    Par snooopppp dans le forum Systèmes de compilation
    Réponses: 3
    Dernier message: 22/02/2004, 15h46

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