Précédent   Forum des professionnels en informatique > Systèmes > Linux > Applications > Shell
Shell Vos questions sur l'utilisation des commandes shell
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 29/04/2005, 20h15   #1
Invité régulier
 
Inscription : janvier 2005
Messages : 38
Détails du profil
Informations forums :
Inscription : janvier 2005
Messages : 38
Points : 6
Points : 6
Par défaut Problème avec la commande MAKE

Bonjour à tous,
Je viens d'installer Mandrake 10.1 sur mon portable et j'ai un probléme avec la commande make.
Je souhaitais compiler un programme en C++ avec un makefile. Ce makefile marche très bien à l'école mais chez moi il me dit:
Citation:
makefile:2: *** séparateur manquant. Arrêt.
Comment remedier à ce problème?
Merci d'avance pour votre aide.
julio26 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/04/2005, 21h05   #2
Membre habitué
 
Avatar de kaisse
 
Inscription : novembre 2003
Messages : 100
Détails du profil
Informations forums :
Inscription : novembre 2003
Messages : 100
Points : 104
Points : 104
Envoyer un message via AIM à kaisse Envoyer un message via MSN à kaisse
C'est peut-être une tabulation qui n'est pas à sa place.
Mais si tu ne nous mets pas le code du Makefile ... et bien on risque de ne pas pouvoir t'aider !
kaisse est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/04/2005, 21h18   #3
Invité régulier
 
Inscription : janvier 2005
Messages : 38
Détails du profil
Informations forums :
Inscription : janvier 2005
Messages : 38
Points : 6
Points : 6
Ah pardon le voici :
Code :
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
 
%.o : %.cpp 
	g++ -c -g $*.cpp
 
 
robot.exe : main.o Robot.o ALarretEnCharge.o ALarretAVide.o EnRoute.o EtatRobot.o Fige.o ObservateurAfficheur.o ObservateurRobot.o Commande.o CommandeFiger.o CommandeRepartir.o CommandeAvancer.o CommandePoser.o
	g++ -o robot.exe ALarretEnCharge.o ALarretAVide.o EnRoute.o EtatRobot.o Fige.o main.o Robot.o ObservateurAfficheur.o ObservateurRobot.o Commande.o CommandeFiger.o CommandeRepartir.o CommandeAvancer.o CommandePoser.o
 
clean : 
	-rm -f *.o
	-rm -f *.exe
 
run: robot.exe
	./robot.exe
 
 
ALarretEnCharge.o: ALarretEnCharge.cpp ALarretEnCharge.h EnRoute.h EtatRobot.h Position.h Robot.h ObservateurRobot.h
ALarretAVide.o: ALarretAVide.cpp ALarretAVide.h EnRoute.h EtatRobot.h Position.h Robot.h ObservateurRobot.h
EnRoute.o: EnRoute.cpp EnRoute.h EtatRobot.h Position.h Robot.h ObservateurRobot.h
EtatRobot.o: EtatRobot.cpp Robot.h Position.h EtatRobot.h ObservateurRobot.h
Fige.o: Fige.cpp Fige.h EtatRobot.h Position.h Robot.h ObservateurRobot.h
ObservateurAfficheur.o: ObservateurAfficheur.cpp ObservateurAfficheur.h ObservateurRobot.h
ObservateurRobot.o: ObservateurRobot.cpp ObservateurRobot.h
main.o: main.cpp Robot.h Position.h EtatRobot.h ObservateurRobot.h ALarretAVide.h EnRoute.h Fige.h ALarretEnCharge.h
Robot.o: Robot.cpp Robot.h Position.h EtatRobot.h ObservateurRobot.h 
Commande.o:Commande.cpp Robot.h Commande.h 
CommandeFiger.o:CommandeFiger.cpp CommandeFiger.h Commande.h Robot.h
CommandeRepartir.o:CommandeRepartir.cpp CommandeRepartir.h Commande.h Robot.h
CommandeAvancer.o:CommandeAvancer.cpp CommandeAvancer.h Commande.h Robot.h
CommandePoser.o:CommandePoser.cpp CommandePoser.h Commande.h Robot.h
julio26 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/04/2005, 14h40   #4
Membre émérite
 
Inscription : mai 2002
Messages : 727
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 727
Points : 982
Points : 982
Il existe de nombreux "make"... Le plus repandu sous Linux doit etre gmake... Il est possible que tu n'ai pas le meme que dans ton ecole. Globalement, le Makefile ne parait pas horible, y'a guere que des espaces qui me semblent pas judicieux. L'erreur indique la ligne 2 :

Personellement, j'aurai mis :

Je suis sous FreeBSD, et aussi bien gmake que le make de FreeBSD acceptent ces deux syntaxes ... A tester cependant.

Note que gl a fait un tutoriel assez sympa (Avis perso qui n'engage que moi) sur les Makefiles :
http://gl.developpez.com/tutoriel/outil/makefile/
__________________

Smortex

Les FAQ Assembleur - Linux
In The Beginning Was The Command Line Neal Stephenson
Smortex est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/04/2005, 16h11   #5
Invité régulier
 
Inscription : janvier 2005
Messages : 38
Détails du profil
Informations forums :
Inscription : janvier 2005
Messages : 38
Points : 6
Points : 6
En fait la ligne 2 est:
et non pas donc je vois pas trop ce qui peut clocher ici.
Pourtant c'est exactement le même qu'à mon école vu que je l'ai mis sur ma clé USB...
Merci pour ton aide
julio26 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/04/2005, 16h39   #6
Membre émérite
 
Inscription : mai 2002
Messages : 727
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 727
Points : 982
Points : 982
J'avais compté la ligne blanche en haut... Donc c'est un problème de syntaxe ... Il faut être rigoureux :
Citation:
Envoyé par [url=http://gl.developpez.com/tutoriel/outil/makefile/#L2
gl[/url]] Chaque commande est précédée d'une tabulation.
Une tabulation, pas un (ou plusieurs espaces)... Certains éditeurs transforment les tabulations en espaces, cela peut avoir corompu ton Makefile... Si tu utilise un editeur qui tient un minimum la route (Mettons vim ) et ouvre ton Makefile, il y a des chances que ladite ligne s'affiche avec un fond rouge, synonyme d'erreur critique (Sous réserve d'activer la coloration syntaxique...)

Et là, ca doit compiler ... Si toujours pas, ca ne viens pas que de là ... Essaye de faire un gmake au lieu d'un make ...
__________________

Smortex

Les FAQ Assembleur - Linux
In The Beginning Was The Command Line Neal Stephenson
Smortex est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/04/2005, 20h48   #7
Invité régulier
 
Inscription : janvier 2005
Messages : 38
Détails du profil
Informations forums :
Inscription : janvier 2005
Messages : 38
Points : 6
Points : 6
Merci Smortex, ça marche avec la tabulation devant la ligne.
C'est bizarre car j'avais pas besoin de la mettre à l'école.
julio26 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h18.


 
 
 
 
Partenaires

Hébergement Web