aidez un (jeune! :-) ) débutant! svp

aidez un (jeune! :-) ) débutant! svp - C - Programmation

Marsh Posté le 02-10-2004 à 13:58:39    

Bonjour a vous tous, Voila mon probleme:
j'ai appris l'Ada95 et je me mets au c.
j'essaye de voir comment faire des fichiers separés en C, comme le fait Ada (paquetages).
j'ai choppé ce petit exemple dans le magazine Login qui represente 3 fichiers et je n'arrive pas a les compiler et l'executer. (j'utilise devcpp V 4.9.8.0
Pour information, jedébute en c (l'erreur vient surement de moi!
Pouvez vous m'aider S'il vous plait? :-)
Voici les sources des 3 fichiers:

Code :
  1. /* premier.c */
  2. short int  cava = 1;
  3. static short int matin = 1;
  4. void dire_bonjour (void/* Définition de la fonction */
  5. {
  6. if (matin == 1)
  7. printf ("Bonjour\n" );
  8. matin = 0;
  9. return 0;
  10. }
  11. /* second.h */
  12. void dire_bonjour (void);  /* Prototype */
  13. extern short int cava;  /* cava est défini dans premier.c */
  14. /* second.c */
  15. #include "second.h"
  16. int main (void)
  17. {
  18. dire_bonjour ();
  19. cava = 0;
  20. return 0;
  21. }


 
Je vous remercie d'avance! :-)


---------------
Tauvin.
Reply

Marsh Posté le 02-10-2004 à 13:58:39   

Reply

Marsh Posté le 02-10-2004 à 14:22:44    

gcc -Wall -std=c89 -pedantic -c premier.c
gcc -Wall -std=c89 -pedantic -c second.c
gcc -Wall second.o premier.o
 
 
./a.out


Message édité par Taz le 02-10-2004 à 14:41:03
Reply

Marsh Posté le 02-10-2004 à 14:25:30    

je suis sous windows avec devc++ V 4.8.9.0
que fais je de ca???
 
gcc -Wall -std=c89 -pedantic premier.c  
gcc -Wall -std=c89 -pedantic second.c  
gcc -Wall second.o premier.o  
 
./a.out


---------------
Tauvin.
Reply

Marsh Posté le 02-10-2004 à 14:26:20    

dans ton cmd.exe
 
de la même manière que tu utilisais gnatmake :o
 
sinon t'as qu'à cliquer bordel :o

Reply

Marsh Posté le 02-10-2004 à 14:28:24    

Taz a écrit :

gcc -Wall -std=c89 -pedantic premier.c
gcc -Wall -std=c89 -pedantic second.c
gcc -Wall second.o premier.o
 
 
./a.out


Tu as oublié l'option "-c" dans les 2 premières lignes de gcc :o

Reply

Marsh Posté le 02-10-2004 à 14:28:56    

oh, tu peux rester poli, si ca te fais chier t'a qu'a pas répondre!


---------------
Tauvin.
Reply

Marsh Posté le 02-10-2004 à 14:31:38    

je pense qu'il y a un moyen dans devcpp de le faire sans passer par cmd;exe non?


---------------
Tauvin.
Reply

Marsh Posté le 02-10-2004 à 14:41:16    

Kristoph a écrit :

Tu as oublié l'option "-c" dans les 2 premières lignes de gcc :o

corrigé

Reply

Marsh Posté le 02-10-2004 à 14:52:23    

faudrait pas renommer second.h en premier.h? [:gratgrat]


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 02-10-2004 à 15:05:58    

je ne sais pas, le probleme est le même voici les erreurs qu'il me met:
 
[Warning] In function `main':
[Linker error] undefined reference to `dire_bonjour'
[Linker error] undefined reference to `cava'


---------------
Tauvin.
Reply

Marsh Posté le 02-10-2004 à 15:05:58   

Reply

Marsh Posté le 02-10-2004 à 15:07:14    

TAUVIN a écrit :

je ne sais pas, le probleme est le même voici les erreurs qu'il me met:
 
[Warning] In function `main':
[Linker error] undefined reference to `dire_bonjour'
[Linker error] undefined reference to `cava'


Tu as bien pris la version corrigée avec le -c ?

Reply

Marsh Posté le 02-10-2004 à 15:16:11    

ca y est, je suis arrive a faire l'executable!!! (avec cmd.exe et ce que m'a donne Taz,)
Le probleme etant que je n'ai rien compris a ce que je faisais!
n'y a t'il pas un moyen (personne n'utilise Devcpp ???) de le faire faire en cliquant sur compiler ???
si chaque fois que je fais des fichiers comme ca, il faut passer par cmd.exe, ce n'est pas tres pratique,
En ada, j'utilisais l'ide Adagide qui faisait l'edition de liens tres bien...
 


---------------
Tauvin.
Reply

Marsh Posté le 02-10-2004 à 15:29:28    

TAUVIN a écrit :

ca y est, je suis arrive a faire l'executable!!! (avec cmd.exe et ce que m'a donne Taz,)
Le probleme etant que je n'ai rien compris a ce que je faisais!
n'y a t'il pas un moyen (personne n'utilise Devcpp ???) de le faire faire en cliquant sur compiler ???
si chaque fois que je fais des fichiers comme ca, il faut passer par cmd.exe, ce n'est pas tres pratique,
En ada, j'utilisais l'ide Adagide qui faisait l'edition de liens tres bien...


Ca te changeras pas beaucoup au moins  [:itm]

Reply

Marsh Posté le 02-10-2004 à 15:38:25    

le mieux aurait ete de me dire a quoi correspondait:
le -wall,
le -std=c89
le -pedantic, et le -c (ca me ferait progresser...)
 
gcc -Wall -std=c89 -pedantic -c premier.c
 


---------------
Tauvin.
Reply

Marsh Posté le 02-10-2004 à 15:39:33    

"-Wall -std=c89 -pedantic" -> pour te taper sur la gueule
"-c" -> pour compiler, pas faire l'édition des liens

Reply

Marsh Posté le 02-10-2004 à 15:41:43    

donc -c n'indique que la compilation,
 
mais je ne suis pas sur du reste ! :-)


---------------
Tauvin.
Reply

Marsh Posté le 02-10-2004 à 15:48:04    

gcc --help
gcc -v --help
:o


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 02-10-2004 à 16:26:40    

ok, merci Masklinn.
et pour faire avec devcpp, il n'y a aucun moyen ???


---------------
Tauvin.
Reply

Marsh Posté le 02-10-2004 à 16:28:45    

oui, tu te bouges un peu, et ça devrait aller

Reply

Marsh Posté le 02-10-2004 à 16:30:08    

c a dire?
si oui, lequel?


---------------
Tauvin.
Reply

Marsh Posté le 02-10-2004 à 16:34:23    

tu créer un projet en ajoutant les source, et devcpp te generera meme le makefile associé

Reply

Marsh Posté le 02-10-2004 à 17:02:23    

Je te remercie beaucoup cris56 ca marche!  :)  
 :hello:


---------------
Tauvin.
Reply

Marsh Posté le 02-10-2004 à 17:40:36    

Tu as un bouton compiler sous devcpp... Faut créer un projet et y ajouter tes sources.


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
Reply

Marsh Posté le 03-10-2004 à 03:26:14    

Merci Helloworld, j'ai vu comment faut faire! :-)


---------------
Tauvin.
Reply

Marsh Posté le 03-10-2004 à 12:10:10    

HelloWorld a écrit :

Tu as un bouton compiler sous devcpp... Faut créer un projet et y ajouter tes sources.

mince tu m'a eu là, j'avais dit 'clique' mais pas où [:the grosminet]

Reply

Marsh Posté le 03-10-2004 à 18:13:36    

T'as Windows toi ?


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
Reply

Marsh Posté le 03-10-2004 à 19:03:25    

HelloWorld a écrit :

T'as Windows toi ?


Oui il l'a installé pour jouer a dungeon keeper :o


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 03-10-2004 à 19:14:21    

Et Wine ?


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
Reply

Marsh Posté le 03-10-2004 à 19:29:34    


Je pense que l'état de Wine à l'époque où Dungeon Keeper est sorti était...
peu utilisable :whistle:


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 03-10-2004 à 23:47:17    

c'est vraiment trop de la balle dungeon keeper

Reply

Marsh Posté le 04-10-2004 à 00:06:04    

"On m'aurait menti ?"


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed