Programmation.c : Extraire une fonction d'un programme
Posté par Agrou () le 22 avril 2008
0
Bonjour,
Dans le cadre d'un stage, je dois extraire des fonctions de traitements en C d'un logiciel afin de les adapter dans un autre.
La grosse difficulté à laquelle je suis confronté c'est que pour extraire une seule fonction je dois inclure de (très) nombreuses dépendances qui contiennent les fonctions qui sont appelées, qui elle mêmes en appellent d'autres etc....
Le tout est disséminé dans de nombreux fichiers avec beaucoup d'inclusions.
Pour le moment j'essaye de faire ce travail à la main, grâce à la fonction tags de nedit j'avance mais c'est très très lent.
Je voudrai savoir si vous connaissez des logiciels/scripts qui peuvent faire ça à ma place car j'imagine que je ne suis pas le premier à me retrouver dans une telle situation.
Merci
> Lire le message (5 commentaires, moyenne: 2,2).
Vous avez demandé le commentaire #924795.



Je ne pense pas
q'un logiciel puisse faire le boulot que l'on te confie a ta place, sinon quel interet de te confier un travail il suffit d'acheter le logiciel?
Bon plus serieusement, un logiciel comme doxygen qui est utilisé pour faire la documentation des logiciels peut te creer un graphe de dépendance des variables et des fonctions de ton projet entre elle et entre les fichiers source et .h.
Cela te permettra d'avancer plus rapidement qu'avec les tag sans doute de savoir que fA->fB->fC->fD depends des fichiers sA,sB,sC et sD.
Merde, ca fait trois fois que je le coupe il est toujours trop court!
-(un stagiaire hardware qui devait connaitre le grand pere de Sylvain Sauvage ;-) )-
[ Répondre ]
[^]Re: Je ne pense pas
L'intérêt de mon boulot n'est heuresement pas d'extraire ces fonctions, mais de les adapter vers un autre logiciel, si je gagne du temps j'en adapterai un plus grand nombre.
Je vais commencer par voir avec doxygen, c'est mieux que rien.
merci !
http://linuxdansmonpc.is-a-geek.com/
« Quoi que tu fasses cela sera insignifiant, mais il est très important que tu le fasses». Mohandas Gandhi
[ Répondre ]