Bonjour
Je suis sous linux et souhaite faire un makefile. Pour m'y aider, je suis allé sur le tutoriel
http://gl.developpez.com/tutoriel/outil/makefile/
Dans un répertoire, j'ai fait un copié collé des fichiers présents main.c hello.c hell.h dans 3 fichiers et ai compilé dans mon répertoire par la commande
make--f=Makefile.config
Mais à la compilation, il me dit
Je ne comprend pas pourquoi il me met des erreurs sur des fichiers copié collé
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 main.c:(.text+0x0): multiple definition of `Hello' hello.o:hello.c:(.text+0x0): first defined here main.o: In function `main': main.c:(.text+0x10): multiple definition of `main' hello.o:hello.c:(.text+0x10): first defined here
Les codes sont les suivants
Code main.c : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 #include <stdio.h> #include <stdlib.h> #include "hello.h" int main(void) { Hello(); return EXIT_SUCCESS; }
Code hello.c : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 #include <stdio.h> #include <stdlib.h> #include "hello.h" int main(void) { Hello(); return EXIT_SUCCESS; }
Code hello.h : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 #include <stdio.h> #include <stdlib.h> void Hello(void) { printf("Hello World\n"); }
Comment est ce possible
Code Makefile.config : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 hello: hello.o main.o gcc -o hello hello.o main.o hello.o: hello.c gcc -o hello.o -c hello.c -W -Wall -ansi -pedantic main.o: main.c hello.h gcc -o main.o -c main.c -W -Wall -ansi -pedantic
Partager