Provided by: manpages-it_4.13-4_all bug

NOME

       ldd - stampa le dipendenze degli oggetti condivisi

SINTASSI

       ldd [opzione]... file...

DESCRIZIONE

       ldd stampa gli oggetti condivisi (librerie condivise) richiesti da ciascun programma od oggetto condiviso
       specificato  sulla  riga di comando. Un esempio d'uso e di output (usando sed(1)  per  tagliare gli spazi
       bianchi iniziali per una migliore leggibilità in questa pagina) è il seguente:

           $ ldd /bin/ls | sed 's/^ */    /'
                   linux-vdso.so.1 (0x00007ffcc3563000)
                   libselinux.so.1 => /lib64/libselinux.so.1 (0x00007f87e5459000)
                   libcap.so.2 => /lib64/libcap.so.2 (0x00007f87e5254000)
                   libc.so.6 => /lib64/libc.so.6 (0x00007f87e4e92000)
                   libpcre.so.1 => /lib64/libpcre.so.1 (0x00007f87e4c22000)
                   libdl.so.2 => /lib64/libdl.so.2 (0x00007f87e4a1e000)
                   /lib64/ld-linux-x86-64.so.2 (0x00005574bf12e000)
                   libattr.so.1 => /lib64/libattr.so.1 (0x00007f87e4817000)
                   libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f87e45fa000)

       Usualmente, ldd invoca il linker dinamico standard (vedere ld.so(8)) e assegna  la  variabile  d'ambiente
       LD_TRACE_LOADED_OBJECTS  impostandola  a  1.  Questo fa sì che il linker dinamico ispezioni le dipendenze
       dinamiche del programma, e trovi (in accordo con le regole descritte in ld.so(8)) e carichi  gli  oggetti
       che  soddisfano  quelle  dipendenze.  Per ogni dipendenza, ldd mostra la posizione dell'oggetto trovato e
       l'indirizzo (esadecimale) in cui è stato caricato. (Le dipendenze condivise linux-vdso  e  ld-linux  sono
       speciali; vedi vdso(7) e ld.so(8).)

   Sicurezza
       È  bene  sapere  che  in  qualche  caso  (p.es.  quando  il programma specifica un interprete ELF oltre a
       ld-linux.so), alcune versioni di ldd  possono  tentare  di  ottenere  le  informazioni  sulle  dipendenze
       tentando di eseguire direttamente il programma, che può portare all'esecuzione di qualsivoglia codice sia
       definito  nell'interprete ELF del programma, e forse all'esecuzione del programma stesso. (Nelle versioni
       di glibc precedenti alla 2.27, l'implementazione upstream di ldd faceva questo, per esempio,  sebbene  la
       maggior parte delle distribuzioni forniscano una versione modificata che non lo fa.)

       Perciò,  non  si  dovrebbe mai impiegare ldd su un eseguibile non fidato, poiché può avere come risultato
       l'esecuzione di codice arbitrario. Un'alternativa più sicura quando si ha a che fare con  eseguibili  non
       fidati è:

           $ objdump -p /percorso/del/programma | grep NEEDED

       Si  noti,  comunque, che questa alternativa mostra solo le dipendenze dirette dell'eseguibile, mentre ldd
       mostra l'intero albero delle dipendenze dell'eseguibile.

OPZIONI

       --version
              Stampa il numero di versione di ldd.

       -v, --verbose
              Stampa tutte le informazioni, inclusa ad es. la versione.

       -u, --unused
              Stampa le dipendenze dirette inutilizzate. (A partire da glibc 2.3.4.)

       -d, --data-relocs
              Effettua rilocazioni e riporta ogni oggetto mancante (solo ELF).

       -r, --function-relocs
              Effettua rilocazioni sia per oggetti dati che per funzioni, e riporta tutti gli oggetti o funzioni
              mancanti (solo ELF).

       --help Informazioni sull'uso.

BUG

       ldd non funziona con librerie condivise a.out.

       ldd non funziona con alcuni programmi a.out molto vecchi, che sono stati costruiti prima che il  supporto
       di ldd fosse aggiunto alle release del compilatore. Se si usa ldd in uno di questi programmi il programma
       tenterà di funzionare con  argc = 0 e i risultati saranno non prevedibili.

VEDERE ANCHE

       pldd(1), sprof(1), ld.so(8), ldconfig(8)

COLOPHON

       Questa  pagina  fa parte del rilascio 5.10 del progetto Linux man-pages. Una descrizione del progetto, le
       istruzioni per la segnalazione degli  errori,  e  l'ultima  versione  di  questa  pagina  si  trovano  su
       https://www.kernel.org/doc/man-pages/.

TRADUZIONE

       La  traduzione  italiana di questa pagina di manuale è stata creata da Giulio Daprelà <giulio@pluto.it> e
       Marco Curreli <marcocurreli@tiscali.it>

       Questa traduzione è documentazione libera; leggere la GNU General Public License Versione 3 o  successiva
       per le condizioni di copyright. Non ci assumiamo alcuna responsabilità.

       Per  segnalare  errori  nella  traduzione  di  questa  pagina  di  manuale  inviare un messaggio a pluto-
       ildp@lists.pluto.it.

                                                  6 marzo 2019                                            LDD(1)