Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
853 connectés 

  FORUM HardWare.fr
  Programmation

  [C] gcc compilation

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[C] gcc compilation

n°118276
chaica
Posté le 27-03-2002 à 16:51:27  profilanswer
 

Salut j'ai un petit programme sous linux que je veux compiler.  
Il tient sur deux fichiers : main.c et fonctions.c  
Donc dans mon main.c j'ai fait un #include "fonctions.c"  
 
Je précise que sous borland (sous win) ca passe.  
 
Donc je lance la commande gcc main.c fonctions.c -o truc et là il me sort des erreurs  bizarres dans ce genre :  
 
/tmp/ccoppE6a.o: In function `saisie':  
/tmp/ccoppE6a.o(.text+0x0): multiple definition of `saisie'  
/tmp/ccPqRkUi.o(.text+0x0): first defined here  
/tmp/ccoppE6a.o: In function `ad_source':  
/tmp/ccoppE6a.o(.text+0xb4): multiple definition of `ad_source'  
/tmp/ccPqRkUi.o(.text+0xb4): first defined here  
/tmp/ccoppE6a.o: In function `ad_dest':  
/tmp/ccoppE6a.o(.text+0xe4): multiple definition of `ad_dest'  
/tmp/ccPqRkUi.o(.text+0xe4): first defined here  
collect2: ld returned 1 exit status  
 
Une idée ?  
 
CHaiCA

 

[jfdsdjhfuetppo]--Message édité par chaica--[/jfdsdjhfuetppo]

mood
Publicité
Posté le 27-03-2002 à 16:51:27  profilanswer
 

n°118283
jupiler
Un cousin...
Posté le 27-03-2002 à 16:56:47  profilanswer
 

est-ce que dans ton fonctions.c, tu as à la fois des prototypes et des définitions de fonctions, cad:
 
 
int fonction1(param...);
 
et plus loin:
int fonction1(param...) {
...
}


---------------
Je ne suis ni pour, ni contre, bien au contraire  
n°118288
chaica
Posté le 27-03-2002 à 17:00:21  profilanswer
 

Ben non en fait je n'ai que la fonction en elle même j'ai pas le prototype.
 
CHaiCA

n°118293
jupiler
Un cousin...
Posté le 27-03-2002 à 17:02:52  profilanswer
 

je ne suis pas sur de la cause de ton pb, mais un #include de .c me choque
 
tu devrais creer un fonctions.h avec tous les prototypes de fonctions.c et faire un #include de fonctions.h dans les 2 .c
 
c'est clair ? :D


---------------
Je ne suis ni pour, ni contre, bien au contraire  
n°118298
chaica
Posté le 27-03-2002 à 17:06:05  profilanswer
 

Question : j'ai mes fonctions dans fonctions.h mais je n'ai pas déclaré de prototype nulle part. Dois je le faire dans main.c  
 
CHaICA  
 
ps : jupiler :ouais je comptais le faire plus tard.

 

[jfdsdjhfuetppo]--Message édité par chaica--[/jfdsdjhfuetppo]

n°118302
jupiler
Un cousin...
Posté le 27-03-2002 à 17:09:14  profilanswer
 

il faut mettre dans fonctions.h les prototypes des fonctions définies dans fonctions.c  
 
et dans les 2 .c mettre #include fonctions.h


---------------
Je ne suis ni pour, ni contre, bien au contraire  
n°118303
Mokett
Posté le 27-03-2002 à 17:09:44  profilanswer
 

Oui c'est normal ton problème ....  
 
si tu inclus fonction.c dans main.c , il ne faut pas compiler fonction.c à part.... :non:
 
c'est à dire qu'il faut simplement faire : gcc main.c -o truc
 
sinon il compile deux fois les memes fonctions et forcément à l'edition des liens il merde.

 

[jfdsdjhfuetppo]--Message édité par mokett--[/jfdsdjhfuetppo]

n°118305
jupiler
Un cousin...
Posté le 27-03-2002 à 17:15:32  profilanswer
 

mokett a écrit a écrit :

Oui c'est normal ton problème ....  
 
si tu inclus fonction.c dans main.c , il ne faut pas compiler fonction.c à part.... :non:
 
c'est à dire qu'il faut simplement faire : gcc main.c -o truc
 
sinon il compile deux fois les memes fonctions et forcément à l'edition des liens il merde.  
 
 




 
je suis d'accord :jap:


---------------
Je ne suis ni pour, ni contre, bien au contraire  
n°118311
chaica
Posté le 27-03-2002 à 17:22:49  profilanswer
 

Jupiler : bon j'ai crée mon fonctions.h avec mes prototypes et c'est passé tout de suite merci.
 
Mokette : merci aussi je note !
 
CHaiCA


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  [C] gcc compilation

 

Sujets relatifs
compilation sous dos en javacompilation sous dos
[open gl] problème de compilation d'un programme tout simple ![PHP]Compilation sous windows
[PHP] Compilation sous Linux[make/gcc] problème de compilation
Compilation GCC + Assemblage NASM, foirage au linkage LDCompilation de quake 3, le "hello world " marche pas.... help!!
[lex/yacc] compilationprobleme de compilation opengl sous linux
Plus de sujets relatifs à : [C] gcc compilation


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR