table of contents
| ADDR2LINE(1) | Outils de développement GNU | ADDR2LINE(1) |
NOM¶
addr2line – Conversion d’adresses ou de symboles + décalages en noms de fichier et numéros de ligne
SYNOPSIS¶
addr2line [-a|--addresses]
[-b nom_bfd|--target=nom_bfd]
[-C|--demangle[=style]]
[-r|--no-recurse-limit]
[-R|--recurse-limit]
[-e fichier|--exe=fichier]
[-f|--functions] [-s|--basename]
[-i|--inlines]
[-p|--pretty-print]
[-j|--section=nom]
[-H|--help] [-V|--version]
[adresse adresse ...]
DESCRIPTION¶
addr2line traduit des adresses ou des symboles + décalages en noms de fichier et numéros de ligne. À partir d’une adresse ou d’un symbole + décalage dans un exécutable, ou d’un décalage dans une section d'un objet transposable, il utilise les informations de débogage pour déterminer le nom de fichier et le numéro de ligne qui lui sont associés.
L’exécutable ou l’objet transposable à utiliser est spécifié avec l’option -e. Par défaut, c’est le fichier a.out. La section dans l’objet transposable à utiliser est spécifiée avec l’option -j.
addr2line possède deux modes opératoires.
Dans le premier mode, les adresses hexadécimales ou les symboles + décalages sont spécifiés sur la ligne de commande et addr2line affiche le nom de fichier et le numéro de ligne pour chaque adresse.
Dans le second mode, addr2line lit les adresses hexadécimales ou les symboles + décalages sur l’entrée standard et affiche le nom de fichier et le numéro de ligne pour chaque adresse sur la sortie standard. Dans ce mode, addr2line peut être utilisé dans un pipeline pour une conversion des adresses sélectionnées dynamiquement.
Le format de la sortie est FICHIER:NUMEROLIGNE. Par défaut, chaque adresse en entrée génère une ligne de sortie.
Deux options peuvent générer des lignes supplémentaires avant chaque ligne FICHIER:NUMEROLIGNE (dans cet ordre).
Si l’option -a est utilisée, une ligne avec l’adresse en entrée est affichée.
Si l’option -f est utilisée, une ligne avec le NOMFONCTION est affichée. C’est le nom de la fonction contenant l’adresse.
Une option peut générer des lignes supplémentaires après la ligne FICHIER:NUMEROLIGNE.
Si l’option -i est utilisée et que le code à l’adresse existe à cause de l’incorporation de procédure (inlining) réalisée par le compilateur, des lignes supplémentaires sont affichées après. Une ou deux lignes supplémentaires (si l’option -f est utilisée) sont affichées pour chaque fonction incorporée.
Sinon, si l’option -p est utilisée, chaque adresse en entrée génère une seule et longue ligne de sortie contenant l’adresse, le nom de la fonction, le nom du fichier et le numéro de ligne. Si l’option -i est aussi utilisée, toute fonction incorporée est affichée de la même manière, mais sur des lignes séparées, et préfixée par le texte (inlined by).
Si le nom de fichier ou de fonction ne peut être déterminé, addr2line affiche deux points d’interrogation à leur place. Si le numéro de ligne ne peut être déterminé, addr2line affiche 0.
Quand symbole + décalage est utilisé, + décalage est facultatif, excepté quand le symbole est ambigu avec un nombre hexadécimal. Les symboles résolus peuvent être codés (mangled – décorés) ou non (unmangled), excepté que les symboles non codés avec + ne sont pas autorisés.
OPTIONS¶
Les formes longues et courtes des options, indiquées ici en remplacement, sont équivalentes.
- -a
- --addresses
- Afficher l’adresse avant l’information du nom de la fonction, du fichier et du numéro de ligne. L’adresse est affichée préfixée par 0x pour l’identifier facilement.
- -b nom_bfd
- --target=nom_bfd
- Indiquer que le format de code objet pour les fichiers objet est nom_bfd.
- -C
- --demangle[=style]
- Décoder (demangle) les noms de symbole de bas niveau en noms du niveau de l’utilisateur. En plus de supprimer tout trait de soulignement ajouté au début par le système, cela rend les noms de fonction C++ plus lisibles. Les différents compilateurs ont des styles de codage différents. L’argument facultatif de style de décodage peut être utilisé pour choisir le style approprié de décodage pour son propre compilateur.
- -e fichier
- --exe=fichier
- Spécifier le nom de l’exécutable dont les adresses doivent être traduites. Le fichier par défaut est a.out.
- -f
- --functions
- Afficher les noms de fonction ainsi que les informations de fichier et de numéro de ligne.
- -s
- --basenames
- Afficher seulement la base des noms de fichier
- -i
- --inlines
- Si l’adresse appartient à une fonction qui a été incorporée (inline), l’information de source pour toutes les portées englobantes jusqu’à la première fonction non incorporée est aussi affichée. Par exemple, si « main » incorpore « fonction_appelée_1 » qui incorpore « fonction_appelée_2 » et que l’adresse provient de « fonction_appelée_2 », les informations de source pour « fonction_appelée_1 » et « main » sont aussi affichées.
- -j
- --section
- Considérer les décalages relativement à la section spécifiée plutôt que comme des adresses absolues.
- -p
- --pretty-print
- Rendre la sortie plus conviviale : chaque emplacement est affiché sur une seule ligne. Si l’option -i est indiquée, les lignes pour toutes les portées englobantes sont préfixées par (inlined by).
- -r
- -R
- --recurse-limit
- --no-recurse-limit
- --recursion-limit
- --no-recursion-limit
- Poser ou non une limite du nombre de récursions
réalisées pendant le décodage des chaines. Puisque le
format de codage de nom permet une infinité de niveaux de
récursion, il est possible de créer des chaines dont le
décodage épuiserait l’espace de pile disponible sur
la machine hôte, déclenchant une erreur de mémoire.
Cette limite essaie d’empêcher cela en restreignant la
récursion à 2048 niveaux d’imbrication.
Par défaut, cette limite est posée, mais la supprimer peut être nécessaire pour décoder des noms vraiment compliqués. Notez cependant que, sans cette limite, l’épuisement de pile est possible et que tout rapport de bogue à propos d’un tel évènement sera rejeté.
L’option -r est un synonyme de l’option --no-recurse-limit. L’option -R est un synonyme de l’option --recurse-limit.
Notez que cette option n’est effective que si l’option -C ou --demangle est activée.
- @fichier
- Lire les options de ligne de commande dans le fichier. Les options
lues sont insérées à la place de l’option
@fichier originelle. Si fichier n’existe pas ou ne
peut être lu, l’option est traitée
littéralement et n’est pas supprimée.
Les options dans fichier sont séparées par des espaces. Un caractère espace peut être inclus dans une option en entourant l’option entière par des guillemets droits, simples ou doubles. Tout caractère (dont les controbliques) peut être inclus en préfixant ce caractère à inclure par une controblique. Le fichier peut lui-même contenir des options @fichier supplémentaires. De telles options seront traitées de manière récursive.
VOIR AUSSI¶
Entrées d’Info pour binutils.
COPYRIGHT¶
Copyright (c) 1991-2026 Free Software Foundation, Inc.
Autorisation est donnée de copier, distribuer et/ou modifier ce document sous les termes de la licence GNU Free Documentation License, version 1.3 ou ultérieure publiée par la fondation Free Software Foundation, sans sections invariantes, sans texte de couverture et sans texte de dos de couverture. Une copie de la licence figure dans la section « GNU Free Documentation License ».
TRADUCTION¶
La traduction française de cette page de manuel a été créée par Jean-Paul Guillonneau <guillonneau.jeanpaul@free.fr>
Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.
Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à debian-l10n-french@lists.debian.org.
| 21 octobre 2026 | binutils-2.47.50 |