ADDR2LINE(1) Instrumente pentru dezvoltare(programare) GNU ADDR2LINE(1) NUME addr2line - convertete adresele sau simbol+poziie in nume de fiier i numere de linie SINOPSIS addr2line [-a|--addresses] [-b nume-bfd|--target=nume-bfd] [-C|--demangle[=stil]] [-r|--no-recurse-limit] [-R|--recurse-limit] [-e nume-fiier|--exe=nume-fiier] [-f|--functions] [-s|--basename] [-i|--inlines] [-p|--pretty-print] [-j|--section=nume] [-H|--help] [-V|--version] [adresa adresa ...] DESCRIERE addr2line convertete adresele sau simbol+poziie in nume de fiier i numere de linie. Avand in vedere o adresa sau un simbol+poziie dintr-un executabil sau o poziie dintr-o seciune a unui obiect realocabil, utilizeaza informaiile de depanare pentru a afla ce nume de fiier i ce numar de linie sunt asociate cu acesta. Obiectul executabil sau realocabil care trebuie utilizat este specificat cu opiunea -e. Valoarea implicita este fiierul a.out. Seciunea din obiectul realocabil care urmeaza sa fie utilizata este specificata cu opiunea -j. addr2line are doua moduri de operare. In primul caz, adresele hexazecimale sau simbol+poziie sunt specificate in linia de comanda, iar addr2line afieaza numele fiierului i numarul liniei pentru fiecare adresa. In al doilea caz, addr2line citete adresele hexazecimale sau simbol+poziie de la intrarea standard i imprima numele fiierului i numarul de linie pentru fiecare adresa la ieirea standard. In acest mod, addr2line poate fi utilizat intr-o eava pentru a converti adrese alese in mod dinamic. Formatul de ieire este NUME_FIIER:NUMAR_LINIE. In mod implicit, fiecare adresa de intrare genereaza o linie de ieire. Doua opiuni pot genera linii suplimentare inainte de fiecare linie NUME_FIIER:NUMAR_LINIE (in aceasta ordine). Daca se utilizeaza opiunea -a, se afieaza o linie cu adresa de intrare. Daca se utilizeaza opiunea -f, atunci se afieaza o linie cu NUME_FUNCIE. Acesta este numele funciei care conine adresa. O opiune poate genera linii suplimentare dupa linia NUME_FIIER:NUMAR_LINIE. In cazul in care se utilizeaza opiunea -i i codul de la adresa data este prezent acolo din cauza expansiunii in linie ,,inlining " de catre compilator, atunci sunt afiate ulterior linii suplimentare. Una sau doua linii suplimentare (in cazul in care se utilizeaza opiunea -f) sunt afiate pentru fiecare funcie expandata in linie ,,inlined". Alternativ, daca se utilizeaza opiunea -p, fiecare adresa de intrare genereaza o singura linie de ieire lunga, care conine adresa, numele funciei, numele fiierului i numarul liniei. In cazul in care a fost utilizata i opiunea -i, toate funciile expandate in linie ,,inlined" vor fi afiate in acelai mod, dar pe linii separate i precedate de textul (inlined by). In cazul in care numele fiierului sau numele funciei nu poate fi determinat, addr2line va imprima doua semne de intrebare in locul lor. In cazul in care numarul liniei nu poate fi determinat, addr2line va imprima 0. Atunci cand se utilizeaza simbol+poziie, +poziie este opionala, cu excepia cazului in care simbolul este ambiguu cu un numar hexazecimal. Simbolurile rezolvate pot fi amestecate sau neamestecate, cu excepia simbolurilor neamestecate cu +, care nu sunt permise. OPIUNI Forma lunga i forma scurta a opiunilor, prezentate aici ca alternative, sunt echivalente. -a --addresses Afieaza adresa inainte de numele funciei, informaii despre fiier i numarul de linie. Adresa este imprimata cu un prefix 0x pentru a o identifica cu uurina. -b nume-bfd --target=nume-bfd Specifica faptul ca formatul codului obiect pentru fiierele obiect este nume-bfd. -C --demangle[=stil] Decodificarea (demangle) numelor de simboluri de nivel scazut in nume de nivel utilizator. In afara de eliminarea oricarei sublinieri iniiale adaugate de sistem, acest lucru face ca numele funciilor C++ sa fie lizibile. Compilatoare diferite au stiluri diferite de decodificare. Argumentul opional ,,demangling style" poate fi utilizat pentru a alege un stil de decodificare adecvat pentru compilatorul dumneavoastra. -e nume-fiier --exe=nume-fiier Specifica numele executabilului pentru care trebuie convertite adresele. Fiierul implicit este a.out. -f --functions Afieaza numele funciilor, precum i informaii despre fiier i numarul de linie. -s --basenames Afieaza numai baza fiecarui nume de fiier. -i --inlines In cazul in care adresa aparine unei funcii care a fost expandata in linie ,,inlined", vor fi imprimate, de asemenea, informaiile privind sursa pentru toate domeniile de cuprindere pana la prima funcie ne-expandata in linie ,,non-inlined". De exemplu, daca ,,main" expandeaza in linie ,,callee1" care expandeaza in linie ,,callee2", iar adresa este din ,,callee2", informaiile sursa pentru ,,callee1" i ,,main" vor fi de asemenea imprimate. -j --section Citete poziii relative la seciunea specificata in loc de adrese absolute. -p --pretty-print Face ca ieirea sa fie mai clara: fiecare locaie este imprimata pe un singur rand. Daca este specificata opiunea -i, liniile pentru toate sferele care le cuprind sunt prefixate cu (inlined by). -r -R --recurse-limit --no-recurse-limit --recursion-limit --no-recursion-limit Activeaza sau dezactiveaza limitarea numarului de recursivitai efectuate in timpul decodificarii irurilor de caractere. Deoarece formatele de manipulare a numelor permit un nivel infinit de recursivitate, este posibil sa se creeze iruri a caror decodificare va epuiza spaiul de stiva disponibil pe calculatorul gazda, declanand o eroare de memorie. Limitarea incearca sa previna acest lucru prin restricionarea recursivitaii la 2048 de niveluri de imbricare. In mod implicit, aceasta limita este activata, dar poate fi necesar sa fie dezactivata pentru a dezmembra nume cu adevarat complicate. Reinei totui ca, daca limita de recursivitate este dezactivata, este posibila epuizarea stivei i orice raport de eroare privind un astfel de eveniment va fi respins. Opiunea -r este un sinonim pentru opiunea --no-recurse-limit. Opiunea -R este sinonima cu opiunea --recurse-limit. Reinei ca aceasta opiune este eficienta numai daca opiunea -C sau --demangle a fost activata. @fiier Citete opiunile liniei de comanda din fiier. Opiunile citite sunt inserate in locul opiunii originale @fiier. Daca fiier nu exista sau nu poate fi citit, atunci opiunea va fi tratata literal i nu va fi eliminata. Opiunile din fiier sunt separate prin spaii albe. Un caracter de spaiere poate fi inclus intr-o opiune prin includerea intregii opiuni intre ghilimele simple sau duble. Orice caracter (inclusiv o bara oblica inversa) poate fi inclus prin prefixarea caracterului care urmeaza sa fie inclus cu o bara oblica inversa. fiier poate conine la randul sau opiuni @fiier suplimentare; orice astfel de opiuni vor fi procesate in mod recursiv. CONSULTAI I Intrari de informaii pentru binutils. DREPTURI DE AUTOR Drepturi de autor (C) 1991-2026 Free Software Foundation, Inc. Se acorda permisiunea de a copia, distribui i/sau modifica acest document in conformitate cu termenii Licenei GNU Free Documentation, versiunea 1.3 sau orice versiune ulterioara publicata de Free Software Foundation; fara seciuni invariante, fara texte de coperta i fara texte de contra coperta. O copie a licenei este inclusa in seciunea intitulata ,,GNU Free Documentation License". TRADUCERE Traducerea in limba romana a acestui manual a fost facuta de Remus- Gabriel Chelu Aceasta traducere este documentaie gratuita; citii Licena publica generala GNU Versiunea 3 sau o versiune ulterioara cu privire la condiii privind drepturile de autor. NU se asuma NICIO RESPONSABILITATE. Daca gasii erori in traducerea acestui manual, va rugam sa trimitei un e-mail la . binutils-2.46 9 februarie 2026 ADDR2LINE(1)