Désolé de poster ici, mais beaucoup de lecteurs doivent connaître.
Mes sources cpp compilent quand je le fais "à la main".
Si j'utilise le makefile suivant, rien ne va.
------------------------
SRC = main.cpp FenetrePrincipale.cpp BarreMenu.cpp
OBJETS = $(SRC:.cpp=.o)
CC = gcc
FLAGS = -Wall -O9 -I"/usr/local/include/fox/"
LIBS = -lFOX
PROG = Seq.x
all : $(PROG)
clean :
rm -f *.o *~
M_Propre :
rm -f *.o *~ $(PROG)
$(PROG) : $(OBJETS)
$(CC) -o $@ $^ $(LIBS)
------------------------
Voici la première (et la seule) ligne exécutée.
g++ -c -o main.o main.cpp
Comme le chemin de la bibliothèque n'est pas préciser rien ne va.
Vous pouvez voir que le compilateur utilisé est g++ alors que celui du
makefile est gcc (volontairement).
Je n'ai pas mis le reste du fichier car je m'attendais à un message
d'erreur signalant "pas de règles pour définir OBJETS". Expliquez moi
d'où vient la ligne qui est exécutée svp, et comment obtenir quelque
chose de valable.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Marc Boyer
Le 17-09-2006, KooK a écrit :
Désolé de poster ici, mais beaucoup de lecteurs doivent connaître.
fu2 fr.comp.os.unix qui est plus approprié 'en général'?
Mes sources cpp compilent quand je le fais "à la main". Si j'utilise le makefile suivant, rien ne va. ------------------------ SRC = main.cpp FenetrePrincipale.cpp BarreMenu.cpp OBJETS = $(SRC:.cpp=.o) CC = gcc FLAGS = -Wall -O9 -I"/usr/local/include/fox/" LIBS = -lFOX PROG = Seq.x
all : $(PROG) clean : rm -f *.o *~ M_Propre : rm -f *.o *~ $(PROG) $(PROG) : $(OBJETS) $(CC) -o $@ $^ $(LIBS) ------------------------ Voici la première (et la seule) ligne exécutée. g++ -c -o main.o main.cpp
Comme le chemin de la bibliothèque n'est pas préciser rien ne va. Vous pouvez voir que le compilateur utilisé est g++ alors que celui du makefile est gcc (volontairement). Je n'ai pas mis le reste du fichier car je m'attendais à un message d'erreur signalant "pas de règles pour définir OBJETS". Expliquez moi d'où vient la ligne qui est exécutée svp, et comment obtenir quelque chose de valable.
La ligne exécutée vient des 'built-in rules', ie les règles prédéfinies. En général, le compilo utilisé pour faire un .o à partir d'un .cpp est dans la macro CXX et non CC
Pour commencer, il faudrait savoir quel makefile tu utilises. make -v devrait donner des infos.
Marc Boyer -- Si tu peux supporter d'entendre tes paroles Travesties par des gueux pour exciter des sots IF -- Rudyard Kipling (Trad. Paul Éluard)
Le 17-09-2006, KooK <bleuf@free.fr> a écrit :
Désolé de poster ici, mais beaucoup de lecteurs doivent connaître.
fu2 fr.comp.os.unix qui est plus approprié 'en général'?
Mes sources cpp compilent quand je le fais "à la main".
Si j'utilise le makefile suivant, rien ne va.
------------------------
SRC = main.cpp FenetrePrincipale.cpp BarreMenu.cpp
OBJETS = $(SRC:.cpp=.o)
CC = gcc
FLAGS = -Wall -O9 -I"/usr/local/include/fox/"
LIBS = -lFOX
PROG = Seq.x
all : $(PROG)
clean :
rm -f *.o *~
M_Propre :
rm -f *.o *~ $(PROG)
$(PROG) : $(OBJETS)
$(CC) -o $@ $^ $(LIBS)
------------------------
Voici la première (et la seule) ligne exécutée.
g++ -c -o main.o main.cpp
Comme le chemin de la bibliothèque n'est pas préciser rien ne va.
Vous pouvez voir que le compilateur utilisé est g++ alors que celui du
makefile est gcc (volontairement).
Je n'ai pas mis le reste du fichier car je m'attendais à un message
d'erreur signalant "pas de règles pour définir OBJETS". Expliquez moi
d'où vient la ligne qui est exécutée svp, et comment obtenir quelque
chose de valable.
La ligne exécutée vient des 'built-in rules', ie les règles
prédéfinies. En général, le compilo utilisé pour faire un .o
à partir d'un .cpp est dans la macro CXX et non CC
Pour commencer, il faudrait savoir quel makefile tu utilises.
make -v
devrait donner des infos.
Marc Boyer
--
Si tu peux supporter d'entendre tes paroles
Travesties par des gueux pour exciter des sots
IF -- Rudyard Kipling (Trad. Paul Éluard)
Désolé de poster ici, mais beaucoup de lecteurs doivent connaître.
fu2 fr.comp.os.unix qui est plus approprié 'en général'?
Mes sources cpp compilent quand je le fais "à la main". Si j'utilise le makefile suivant, rien ne va. ------------------------ SRC = main.cpp FenetrePrincipale.cpp BarreMenu.cpp OBJETS = $(SRC:.cpp=.o) CC = gcc FLAGS = -Wall -O9 -I"/usr/local/include/fox/" LIBS = -lFOX PROG = Seq.x
all : $(PROG) clean : rm -f *.o *~ M_Propre : rm -f *.o *~ $(PROG) $(PROG) : $(OBJETS) $(CC) -o $@ $^ $(LIBS) ------------------------ Voici la première (et la seule) ligne exécutée. g++ -c -o main.o main.cpp
Comme le chemin de la bibliothèque n'est pas préciser rien ne va. Vous pouvez voir que le compilateur utilisé est g++ alors que celui du makefile est gcc (volontairement). Je n'ai pas mis le reste du fichier car je m'attendais à un message d'erreur signalant "pas de règles pour définir OBJETS". Expliquez moi d'où vient la ligne qui est exécutée svp, et comment obtenir quelque chose de valable.
La ligne exécutée vient des 'built-in rules', ie les règles prédéfinies. En général, le compilo utilisé pour faire un .o à partir d'un .cpp est dans la macro CXX et non CC
Pour commencer, il faudrait savoir quel makefile tu utilises. make -v devrait donner des infos.
Marc Boyer -- Si tu peux supporter d'entendre tes paroles Travesties par des gueux pour exciter des sots IF -- Rudyard Kipling (Trad. Paul Éluard)
KooK
Désolé de poster ici, mais beaucoup de lecteurs doivent connaître.
fu2 fr.comp.os.unix qui est plus approprié 'en général'? D'accord, je le saurais pour la prochaine fois
La ligne exécutée vient des 'built-in rules', ie les règles prédéfinies. En général, le compilo utilisé pour faire un .o à partir d'un .cpp est dans la macro CXX et non CC Merci pour cette info.
Pour commencer, il faudrait savoir quel makefile tu utilises. make -v devrait donner des infos. 3.81
En ajoutant une règle (correcte) pour créer les objets tout rentre dans l'ordre.
Marc Boyer
Désolé de poster ici, mais beaucoup de lecteurs doivent connaître.
fu2 fr.comp.os.unix qui est plus approprié 'en général'?
D'accord, je le saurais pour la prochaine fois
La ligne exécutée vient des 'built-in rules', ie les règles
prédéfinies. En général, le compilo utilisé pour faire un .o
à partir d'un .cpp est dans la macro CXX et non CC
Merci pour cette info.
Pour commencer, il faudrait savoir quel makefile tu utilises.
make -v
devrait donner des infos.
3.81
En ajoutant une règle (correcte) pour créer les objets tout rentre dans
l'ordre.
Désolé de poster ici, mais beaucoup de lecteurs doivent connaître.
fu2 fr.comp.os.unix qui est plus approprié 'en général'? D'accord, je le saurais pour la prochaine fois
La ligne exécutée vient des 'built-in rules', ie les règles prédéfinies. En général, le compilo utilisé pour faire un .o à partir d'un .cpp est dans la macro CXX et non CC Merci pour cette info.
Pour commencer, il faudrait savoir quel makefile tu utilises. make -v devrait donner des infos. 3.81
En ajoutant une règle (correcte) pour créer les objets tout rentre dans l'ordre.