Equivalent de nm pour Windows

Equivalent de nm pour Windows - Programmation

Marsh Posté le 27-05-2002 à 20:12:24    

Salut
je recherche un equivalent de la commande unix nm pour les library windows.

Reply

Marsh Posté le 27-05-2002 à 20:12:24   

Reply

Marsh Posté le 27-05-2002 à 20:21:14    

Je connais pas cette commande ...
"The nm command prints formatted listings of the symbol tables for each ELF file specified."
"La commande nm affiche les symboles utilisés dans un fichier exécutable"
 
Sous Windows un exe n'est pas au format ELF mais au format PE.
Quels genre de symbols affiche cette comande ?


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
Reply

Marsh Posté le 27-05-2002 à 20:26:42    

Je viens de tester le nm de cygwin sur un exe ... "File format not recognized"
Mais apparement ça marche sur les librairies porduites par gcc (pour windows) vu que lui il sort ça en elf ...

 

[jfdsdjhfuetppo]--Message édité par HelloWorld le 27-05-2002 à 20:28:08--[/jfdsdjhfuetppo]


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
Reply

Marsh Posté le 27-05-2002 à 20:31:52    

oui le nm de cygwin je l'ai essayé et ca marche pas avec le binaire généré par le compilo microsoft
 
je voudrais un soft qui liste les symbols définis dans un executable une lib ou un obj win32
un peu comme le dependency walker de crosoft, mais pour une lib statique
 
voila j'espere avoir été un peu plus clair

Reply

Marsh Posté le 27-05-2002 à 20:32:00    

Affirmatif ... :)
 
E:\>F:\Programmation\GCC-WIN32\H-i386-cygwin32\bin\nm.exe F:\Programmation\GCC-WIN32\H-i386-cygwin32\lib\libmmalloc.a
 
mm.o:
000011ac b .bss
000011a8 d .data
00000000 t .text
00000000 t ___gnu_compiled_c
00000004 C ___mmalloc_default_mdp
00000044 T ___mmalloc_free
0000111c T ___mmalloc_sbrk_init
         U _abort
000003c0 t _align
000011a8 d _ansi_c_idiots
000011c0 b _cache_pagesize
00000030 T _calloc
00000934 t _checkhdr
         U _close
         U _fprintf
000003b0 T _free
         U _getpagesize
000003fc t _initialize
00000924 T _malloc
000011ac b _mallstream
000011b0 b _mallwatch
00000000 T _mcalloc
         U _memcpy
         U _memmove
         U _memset
00000350 T _mfree
00000958 t _mfree_check
0000055c T _mmalloc
00001024 T _mmalloc_attach
000009ac t _mmalloc_check
0000102c T _mmalloc_detach
000010c8 T _mmalloc_getkey
0000109c T _mmalloc_setkey
00000ae8 T _mmcheck
00000a88 T _mmcheckf
00000afc T _mmemalign
00000ba8 T _mmstats
00000dd0 T _mmtrace
00000470 t _morecore
00000ddc T _mrealloc
00000a04 t _mrealloc_check
00000fe8 T _mvalloc
000011b4 b _old_mfree_hook
000011b8 b _old_mmalloc_hook
000011bc b _old_mrealloc_hook
00000fd4 T _realloc
         U _sbrk
000010ec t _sbrk_morecore
00000c0c t _tr_break
00000c1c t _tr_freehook
00000c8c t _tr_mallochook
00000d14 t _tr_reallochook
00001014 T _valloc
00000000 t gcc2_compiled.


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
Reply

Marsh Posté le 27-05-2002 à 20:39:13    

Si MS ne propose pas d'outil, je ne pense pas que cela existe ...
Pour les executables, tu veux la liste des fonctions importées (pour chaque dll) ?
Faut voir avec un éditeur de PE.
Je crois que l'apperçu rapide de Windows peut te dépanner.


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
Reply

Marsh Posté le 27-05-2002 à 20:43:28    

en fait c'est surtout pour les lib statiques que j'en ai besoin.
ce con de linker me sort que j'ai des symbols en double et je comprends pas comment ca se fait et je voudrais donc analyser le probleme plus en profondeur
 
en tout cas sur ce coup, UNIX POWA !!

Reply

Marsh Posté le 27-05-2002 à 20:53:24    

Eh bien regarde du coté des fichier DEF, tu devrais trouver ton bonheur ;)


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed