J'ai une bibliothèque statique, disons mystaticlib.a
. Je veux voir son contenu, comme le nombre de fichiers objets à l'intérieur.
Comment puis-je faire cela sur gcc?
Sur gcc, utilisez ar -t
.
-t
option de gnu archiver (ar) écrit une table des matières de l'archive dans la sortie standard. Seuls les fichiers spécifiés par les opérandes de fichiers doivent être inclus dans la liste écrite. Si aucun opérande de fichier n'est spécifié, tous les fichiers dans l'archive doivent être inclus dans l'ordre de l'archive.
Vous pouvez voir le contenu (les fichiers .o qui y sont entrés) et les symboles définis en utilisant nm
. S'il contient du code C++, vous devez utiliser le -C
option pour démêler les noms des symboles:
nm -C libschnoeck.a | less
Sur un Mac, utilisez simplement
nm libschnoeck.a | less
Il n'y a pas -C
option avec la version Mac de nm.
Toutes les réponses ci-dessus sont correctes. Je fournis juste une URL pour plus d'informations sur la commande "nm".
Vous pouvez vous référer au site Web mentionné ci-dessous.
Il est juste tombé sur ceci:
Vous pouvez ouvrir une archive (.a) avec 7Zip. Fonctionne également pour les fichiers objets dans l'archive. Liste de toutes sortes de contenus comme .text, .bss, .data,
Etc. avec leur offset, length, type,
... De plus, il est possible de tout déballer, en utilisant un éditeur hexadécimal ou un bloc-notes ++ pour afficher le contenu. J'ai testé cela avec une archive créée avec GNUToolsARMEmbedded\2018-q4-major\bin\arm-none-eabi-
Toolchain et 7Zip 16.04 (64-bit)