Décompiler une librairie .a

norge_pagan -  
loupius Messages postés 789 Statut Membre -
Bonjour,

J'ai perdu les sources de ma lib (lib statique .a) et je voulais savoir s'il y a un moyen de récupérer mes fichiers sources ....

Pour info je l'ai compilé en -ggdb3 je ne sais pas si ca aide ...
A voir également:

2 réponses

loupius Messages postés 789 Statut Membre 148
 
La réponse est claire, c'est non.
Pourquoi ?
Une bibliothèque, qu'elle soit statique ou partagée ne change rien à l'affaire qui nous préoccupe, n'est qu'un ensemble de fichiers objets et ce type de fichier, résultat d'une compilation, ne contient plus le texte source.
Avec Linux, une bibliothèque statique peut être 'manipulée' car, en fait, ce n'est qu'une archive comme une autre. Un 'man ar' te renseignera. Par exemple, si ta bibliothèque s'appelle 'libBiblio.a' tu pourras:
- ar -tv libBiblio.a voir le contenu du l'archive,
- ar -xv libBiblio.a objet.o extraire 'objet.o' de l'archive,
- on peut aussi ajouter, remplacer ou supprimer.
La seule récupération efficace de fichiers perdus est la sauvegarde ;-) On est tous passé par cette frustration résultant de la perte d'un long travail et on se dit que l'on nous y reprendra plus... hélas, l'avenir nous prouve bien souvent le contraire.
Bonne continuation.
1
Pilow Messages postés 410 Statut Membre 71
 
Bonjour,

Je crois que pour des questions de sécurité, il est impossible de récupérer les sources d'une librairie.
A vérifier.
0