2013-02-23 3 views
1

Pour toute application c (disons apache dans ce cas) je veux retourner une liste de toutes les méthodes et le fichier dans lequel ils se trouvent. Par exemple, je voudrais voir quelque chose comme: Je voudrais faire cela et éviter la tâche difficile d'analyser manuellement les fichiers c physiques pour la sortie de la méthode. Je sais que d'autres langues ont un réflecteur.Obtenir toutes les méthodes de l'application AC

Merci à tous.

+1

Dans quel but? Voulez-vous de la documentation autogénérée? – thejh

+0

Non, je travaille avec un outil d'analyse de chemin et je veux faire correspondre certaines de mes sorties. – user1928436

+1

'grep' avec regex ira le travail .. –

Répondre

2

Vous n'avez pas spécifié la plate-forme, donc une solution possible est le programme 'ctags':

DESCRIPTION 
     The ctags utility shall be provided on systems that support the User Portability Utilities option, the Software Development Utilities option, and 
     either or both of the C-Language Development Utilities option and FORTRAN Development Utilities option. On other systems, it is optional. 

     The ctags utility shall write a tagsfile or an index of objects from C-language or FORTRAN source files specified by the pathname operands. The 
     tagsfile shall list the locators of language-specific objects within the source files. A locator consists of a name, pathname, and either a search 
     pattern or a line number that can be used in searching for the object definition. The objects that shall be recognized are specified in the 
     EXTENDED DESCRIPTION section. 

OPTIONS 
... 
     -x  Produce a list of object names, the line number, and filename in which each is defined, as well as the text of that line, and write this to 
       the standard output. A tagsfile shall not be created when -x is specified. 
+0

C'est compris. Merci! – user1928436

3

homme nm (1)

Mais, les fichiers source de symboles ne sont disponibles que si les informations de débogage a été compilé (-G).

2

Vous pouvez le faire avec ctags. From the site:

Ctags génère un fichier d'index (ou de balise) d'objets langage trouvés dans les fichiers sources qui permet à ces éléments d'être rapidement et facilement localisés par un éditeur de texte ou un autre utilitaire. Une balise désigne un objet langage pour lequel une entrée d'index est disponible (ou, en variante, l'entrée d'index créée pour cet objet).

Ctags est compatible with a wide array of tools.

2

Cela ressemble à un travail pour l'éditeur de liens. Avez-vous essayé de générer un fichier de carte? Vérifiez la documentation de votre éditeur de liens pour savoir comment générer le fichier de carte.

Questions connexes