Décompiler une librairie .a

Fermé
norge_pagan - 26 nov. 2009 à 10:27
loupius Messages postés 697 Date d'inscription dimanche 1 novembre 2009 Statut Membre Dernière intervention 31 décembre 2017 - 26 nov. 2009 à 13:31
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 697 Date d'inscription dimanche 1 novembre 2009 Statut Membre Dernière intervention 31 décembre 2017 148
26 nov. 2009 à 13:31
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 400 Date d'inscription vendredi 2 octobre 2009 Statut Membre Dernière intervention 23 décembre 2009 71
26 nov. 2009 à 10:58
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