table of contents
ADDR2LINE(1) | Herramientas de desarrollo de GNU | ADDR2LINE(1) |
NOMBRE¶
addr2line - convierte direcciones o smbolo+compensación a nombres de archivo y números de línea
SINOPSIS¶
addr2line [-a|--addresses]
[-b bfdnombre|--target=bfdnombre]
[-C|--demangle[=estilo]]
[-r|--no-recurse-limit]
[-R|--recurse-limit]
[-e filename|--exe=nombrearchivo]
[-f|--functions] [-s|--basename]
[-i|--inlines]
[-p|--pretty-print]
[-j|--section=nombre]
[-H|--help] [-V|--version]
[addr addr ...]
DESCRIPCIÓN¶
addr2line traduce direcciones o símbolo+compensación a nombres de archivo y números de línea. Dada una dirección o un símbolo+compensación en un ejecutable o la compensación en una sección de un objeto reubicable, emplea la información de depuración para adivinar que nombre de archivo y número de línea están asociados a una dirección dada.
El objeto ejecutable o reubicable a utilizar se define mediante la opción -e, por defecto será a.out. La sección del objeto reubicable a utilizar se define mediante la opción -j.
addr2line tiene dos modos de operación.
En el primero, se especifican en la línea de órdenes direcciones hexadecimales, y addr2line muestra el nombre del archivo y el número de línea para cada dirección.
En el segundo, addr2line lee direcciones hexadecimales o símbolo+compensación desde la entrada estándar, mostrando el nombre del archivo y el número de línea para cada dirección en la salida estándar. En este modo, addr2line puede emplearse en una interconexión para convertir dinámicamente direcciones escogidas.
El formato de salida es FILENAME:LINENO. Por defecto, cada dirección de entrada genera una línea de salida.
Dos opciones pueden generar líneas adicionales antes de cada línea FILENAME:LINENO (en ese orden).
Si se emplea la opcin -a, se mostrar una línea con la direccin de entrada.
Si se utiliza la opción -f, se mostrará una línea con FUNCTIONNAME. Este es el nombre de la función que contiene la dirección.
Una opción puede generar líneas adicionales después de la línea FILENAME:LINENO.
Si se utiliza la opción -i y está el código en la dirección insertada por el compilador, se mostrarán líneas adicionales. Se muestran una o dos líneas adicionales (si se usa la opción -f) para cada función en línea.
Alternativamente, si se utiliza la opción -p, cada dirección de entrada genera una línea de salida única y larga que contendrá la dirección, el nombre de la función, el nombre del archivo y el número de línea. Si también se ha utilizado la opción -i, las funciones insertadas se mostrarán de la misma manera, pero en líneas separadas y con el prefijo (inlined by).
Si el nombre de archivo o el de función no pueden determinarse, addr2line mostrará dos signos de interrogación en su lugar. Si el número de línea no puede determinarse, addr2line mostrará el número 0.
Cuando se utiliza símbolo+compensación, la compensación es opcional, excepto cuando el símbolo es ambiguo con un número hexadecimal. Los símbolos resueltos pueden estar recortados o no, salvo que no se permiten símbolos sin recortar con +.
OPCIONES¶
Las opciones largas y cortas, son equivalentes.
- -a
- --addresses
- Muestra la dirección antes del nombre de la función, el archivo y la información del número de línea. La dirección se muestra con un prefijo 0x para identificarla más fácilmente.
- -b nombrebfd
- --target=nombrebfd
- Indica que el formato del código objeto para los archivos objeto ser nombrebfd.
- -C
- --demangle[=estilo]
- Descodifica (demangle) nombres de símbolos de bajo nivel en nombres entendibles por un usuario. Además de eliminar cualquier guión bajo inicial añadido por el sistema, esto hace que los nombres de las funciones de C++ sean legibles. Diferentes compiladores tienen diferentes estilos de manipulación. El argumento opcional para recorte se puede utilizar para elegir un estilo de recorte apropiado para su compilador.
- -e nombrefichero
- --exe=nombrefichero
- Especifica el nombre del ejecutable para el que se debern traducir las direcciones. El nombre de fichero predeterminado es a.out.
- -f
- --functions
- Muestra nombres de funciones a la vez que información sobre archivos y números de línea.
- -s
- --basenames
- Muestra solamente el nombre base de cada nombre de fichero.
- -i
- --inlines
- Si la dirección pertenece a una función que estaba insertada, también se mostrará la información de origen para todos los ámbitos adjuntos hasta la primera función no insertada. Por ejemplo, si "main" inserta "callee1" que a su vez inserta "callee2 " la dirección es de "callee2", la información fuente de "callee1" y "main" también se muestran.
- -j
- --section
- Lee compensaciones relativas a la sección definida en lugar de direcciones absolutas.
- -p
- --pretty-print
- Hace que el resultado sea más sencillo de interpretar para los humanos: cada ubicación se muestra en una línea. Si se define la opción -i, las líneas para todos los ámbitos adjuntos tienen el prefijo (inlined by).
- -r
- -R
- --recurse-limit
- --no-recurse-limit
- --recursion-limit
- --no-recursion-limit
- Activa o desactiva el límite a la recursividad realizada mientras
se decodifican las cadenas. Dado que los formatos de manipulación
de nombres permiten un nivel infinito de recursividad, es posible crear
cadenas cuya descodificación agotará la cantidad de espacio
de pila disponible en el equipo, lo que provocará un error de
memoria. Este límite intenta evitarlo restringiendo la recursividad
a 2048 niveles de anidamiento.
Por defecto, este límite está habilitado, pero puede ser necesario deshabilitarlo para descodificar nombres realmente complejos. Tenga en cuenta que si el límite de recursividad está deshabilitado, puede darse un agotamiento de la pila y que se rechace cualquier informe de error sobre el evento.
La opción -r es sinónimo de la opción --no-recurse-limit. La opción -R es sinónimo de la opción --recurse-limit.
Tenga en cuenta que esta opción solo es efectiva si está habilitada la opción -C o --demangle.
- @archivo
- Lee las opciones de la línea de órdenes desde
archivo. Las opciones leídas se insertarán en lugar
de la opción @archivo original. Si archivo no existe
o no se puede leer, la opción se tratará literalmente y no
se eliminará.
Las opciones en archivo están separadas por espacios en blanco. Se puede incluir un carácter de espacio en blanco en una opción encerrándola completamente entre comillas simples o dobles. Se puede incluir cualquier carácter (incluida una barra invertida) anteponiendo al carácter que se incluirá una barra invertida. El archivo puede contener opciones @archivo adicionales, procesándose éstas de manera recursiva.
VÉASE TAMBIÉN¶
Página info de binutils.
COPYRIGHT¶
Copyright (c) 1991-2024 Free Software Foundation, Inc.
Se permite copiar, distribuir y/o modificar este documento bajo los términos de la Licencia de documentación libre GNU, Versión 1.3 o cualquier versión posterior publicada por la Free Software Foundation; sin secciones no varibales, sin textos de portada y sin textos de contraportada. Se incluye una copia de la licencia en la sección titulada 'Licencia de documentación libre GNU'.
TRADUCCIÓN¶
La traducción al español de esta página del manual fue creada por Marcos Fouces <marcos@debian.org>
Esta traducción es documentación libre; lea la GNU General Public License Version 3 o posterior con respecto a las condiciones de copyright. No existe NINGUNA RESPONSABILIDAD.
Si encuentra algún error en la traducción de esta página del manual, envíe un correo electrónico a debian-l10n-spanish@lists.debian.org.
25 Agosto 2024 | binutils-2.43.1 |