Comment recompiler tout ça ....
BananeChaude
Messages postés
4
Date d'inscription
Statut
Membre
Dernière intervention
-
[Dal] Messages postés 6205 Date d'inscription Statut Contributeur Dernière intervention -
[Dal] Messages postés 6205 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour à tous :)
J'ai un p'tit soucis, j'ai créer ce programme durant mes étude et je ne me souviens plus de comment j'ai fais pour recompiler et surtout exécuter ce programme ...
Toutes les sources sont dispo ici => http://s000.tinyupload.com/index.php?file_id=31316351731215628576
Rien de bien inquiétant, c'est une simulation de jeu de la vie (des lapins qui mangent des fleurs en essayant d'échapper aux renards)
si quelqu'un parviens à recréer un .exe, pourrait-il me le faire parvenir ?
ou m'indiquer, ETAPE PAR ETAPE, comment se configurer un environnement pour compiler et exécuter ce code :)
Merci par avance pour votre aide.
J'ai un p'tit soucis, j'ai créer ce programme durant mes étude et je ne me souviens plus de comment j'ai fais pour recompiler et surtout exécuter ce programme ...
Toutes les sources sont dispo ici => http://s000.tinyupload.com/index.php?file_id=31316351731215628576
Rien de bien inquiétant, c'est une simulation de jeu de la vie (des lapins qui mangent des fleurs en essayant d'échapper aux renards)
si quelqu'un parviens à recréer un .exe, pourrait-il me le faire parvenir ?
ou m'indiquer, ETAPE PAR ETAPE, comment se configurer un environnement pour compiler et exécuter ce code :)
Merci par avance pour votre aide.
2 réponses
Salut BananeChaude,
Ton fichier compressé contient déjà deux exécutables compilés pour Linux, pour une machine 32 bits, comme l'indique l'utilitaire
Pour exécuter ces programmes, il te faut un système Linux 32 bits doté des bibliothèques dynamiques suivantes révélées par
Les permissions d'exécution ont cependant été retirées sur ces fichiers "prog" et "prog1", pour restaurer les permissions, il faut faire :
ensuite, tu peux les exécuter sous Linux :
Je ne l'ai pas fait sur mon système.
S'agissant de ton code, ton Makefile ne fonctionne pas avec GNU Make.
Une compilation utilisant les options indiquées dans ce Makefile avec gcc donne :
La compilation échoue car "nb_animaux" n'est pas déclarée.
Un grep sur les fichiers du projet semble indiquer que cette variable n'est déclarée nulle part.
En l'état, les sources ne sont pas compilables en raison de cette erreur.
Il y a aussi de nombreux warnings.
Dal
Ton fichier compressé contient déjà deux exécutables compilés pour Linux, pour une machine 32 bits, comme l'indique l'utilitaire
file:
$ file prog
prog: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.9, not stripped
$ file prog1
prog1: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.9, not stripped
Pour exécuter ces programmes, il te faut un système Linux 32 bits doté des bibliothèques dynamiques suivantes révélées par
ldd:
$ ldd prog
linux-gate.so.1 => (0xb77e4000)
libpthread.so.0 => /lib/i386-linux-gnu/i686/cmov/libpthread.so.0 (0xb77a9000)
libc.so.6 => /lib/i386-linux-gnu/i686/cmov/libc.so.6 (0xb7644000)
/lib/ld-linux.so.2 (0xb77e5000)
$ ldd prog1
linux-gate.so.1 => (0xb7709000)
libpthread.so.0 => /lib/i386-linux-gnu/i686/cmov/libpthread.so.0 (0xb76ce000)
libc.so.6 => /lib/i386-linux-gnu/i686/cmov/libc.so.6 (0xb7569000)
/lib/ld-linux.so.2 (0xb770a000)
Les permissions d'exécution ont cependant été retirées sur ces fichiers "prog" et "prog1", pour restaurer les permissions, il faut faire :
$ chmod +x prog
ensuite, tu peux les exécuter sous Linux :
$ ./prog
Je ne l'ai pas fait sur mon système.
S'agissant de ton code, ton Makefile ne fonctionne pas avec GNU Make.
Une compilation utilisant les options indiquées dans ce Makefile avec gcc donne :
$ gcc -Wall -D_REENTRANT -lpthread *.c -o jeu
init.c: In function `main':
init.c:96:19: error: `nb_animaux' undeclared (first use in this function)
init.c:96:19: note: each undeclared identifier is reported only once for each function it appears in
prog1.c: In function `main':
prog1.c:128:3: warning: implicit declaration of function `sleep' [-Wimplicit-function-declaration]
prog.c:243:1: warning: return type defaults to `int' [-Wreturn-type]
prog.c: In function `main':
prog.c:282:3: warning: implicit declaration of function `sleep' [-Wimplicit-function-declaration]
prog.c:249:22: warning: unused variable `lapinou' [-Wunused-variable]
prog.c:245:8: warning: unused variable `coor' [-Wunused-variable]
prog.c: In function `renard':
prog.c:211:1: warning: control reaches end of non-void function [-Wreturn-type]
prog.c: In function `lapin':
prog.c:151:1: warning: control reaches end of non-void function [-Wreturn-type]
threads_total_tas_struct.c:24:1: warning: return type defaults to `int' [-Wreturn-type]
threads_total_tas_struct.c: In function `main':
threads_total_tas_struct.c:29:19: warning: unused variable `v3' [-Wunused-variable]
threads_total_tas_struct.c:29:14: warning: unused variable `v2' [-Wunused-variable]
threads_total_tas_struct.c:29:9: warning: unused variable `v1' [-Wunused-variable]
threads_total_tas_struct.c: In function `somme':
threads_total_tas_struct.c:22:1: warning: control reaches end of non-void function [-Wreturn-type]
La compilation échoue car "nb_animaux" n'est pas déclarée.
Un grep sur les fichiers du projet semble indiquer que cette variable n'est déclarée nulle part.
En l'état, les sources ne sont pas compilables en raison de cette erreur.
Il y a aussi de nombreux warnings.
Dal
Bonjour,
Merci pour toute ces informations. Le code n'est certainement pas à jour car c'est un projet que j'ai rendu durant mes études et il se lançait c'est sur (sinon je n'aurais pas eu 17/20 ^^)
Tant pis, je verrais si je trouve le temps un jour de le restaurer ^^"
Merci beaucoup !
Merci pour toute ces informations. Le code n'est certainement pas à jour car c'est un projet que j'ai rendu durant mes études et il se lançait c'est sur (sinon je n'aurais pas eu 17/20 ^^)
Tant pis, je verrais si je trouve le temps un jour de le restaurer ^^"
Merci beaucoup !