.\" -*- coding: UTF-8 -*-
.\" Copyright 1995-2000 David Engel (david@ods.com)
.\" Copyright 1995 Rickard E. Faith (faith@cs.unc.edu)
.\" Copyright 2000 Ben Collins (bcollins@debian.org)
.\"    Redone for glibc 2.2
.\" Copyright 2000 Jakub Jelinek (jakub@redhat.com)
.\"    Corrected.
.\" and Copyright (C) 2012, 2016, Michael Kerrisk <mtk.manpages@gmail.com>
.\"
.\" SPDX-License-Identifier: GPL-1.0-or-later
.\"
.\"*******************************************************************
.\"
.\" This file was generated with po4a. Translate the source file.
.\"
.\"*******************************************************************
.TH ldd 1 "2 maja 2024 r." "Linux man\-pages 6.9.1" 
.SH NAZWA
ldd \- wyświetla zależności od obiektów dzielonych
.SH SKŁADNIA
.nf
\fBldd\fP [\fIopcja\fP]... \fIplik\fP...
.fi
.SH OPIS
\fBldd\fP wyświetla obiekty dzielone (biblioteki dzielone) wymagane przez każdy
program lub obiekt dzielony podany w linii poleceń. Poniżej pokazano
przykład użycia i wyniku działania programu:
.P
.in +4n
.EX
$ \fBldd /bin/ls\fP
    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)
.EE
.in
.P
.\"
Zwyczajowo \fBldd\fP uruchamia standardowy konsolidator dynamiczny (patrz
\fBld.so\fP(8) ze zmienną środowiska \fBLD_TRACE_LOADED_OBJECTS\fP ustawioną na
1. Powoduje to sprawdzenie przez dynamicznego konsolidatora dynamicznych
zależności programu oraz odnalezienie (zgodnie z regułami opisanymi w
\fBld.so\fP(8)) i załadowanie obiektów spełniających te zależności. W przypadku
każdej zależności, \fBldd\fP wypisze położenie pasującego obiektu i
(szesnastkowy) adres, pod którym go załadowano (zależności dzielone
\fIlinux\-vdso\fP i \fIld\-linux\fP są specjalne; zob. \fBvdso\fP(7) i \fBld.so\fP(8)).
.SS BEZPIECZEŃSTWO
.\" The circumstances are where the program has an interpreter
.\" other than ld-linux.so. In this case, ldd tries to execute the
.\" program directly with LD_TRACE_LOADED_OBJECTS=1, with the
.\" result that the program interpreter gets control, and can do
.\" what it likes, or pass control to the program itself.
.\" Much more detail at
.\" http://www.catonmat.net/blog/ldd-arbitrary-code-execution/
.\" Mainline glibc's ldd allows this possibility (the line
.\"      try_trace "$file"
.\" in glibc 2.15, for example), but many distro versions of
.\" ldd seem to remove that code path from the script.
.\" glibc commit eedca9772e99c72ab4c3c34e43cc764250aa3e3c
Należy mieć świadomość, że w niektórych sytuacjach (np. gdy program poda
intepretator ELF inny niż \fIld\-linux.so\fP), niektóre wersje  \fBldd\fP mogą
próbować uzyskać informacje o zależnościach, uruchamiając program
bezpośrednio, co może spowodować wykonanie dowolnego kodu zdefiniowanego w
interpretatorze ELF programu i, być może, wykonanie samego programu (przed
glibc 2.27 dokonywała tego np. implementacja \fBldd\fP od dostawcy, choć
większość dystrybucji zapewniała zmodyfikowaną wersję, która tego nie
czyniła).
.P
Dlatego \fInigdy\fP nie powinno się używać \fBldd\fP z niezaufanym programem
wykonywalnym, ponieważ może to owocować wykonaniem dowolnego
kodu. Bezpieczniejsza alternatywa radzenia sobie z niezaufanymi programami
wykonywalnymi to:
.P
.in +4n
.EX
$ \fBobjdump \-p /ścieżka/do/programu | grep NEEDED\fP
.EE
.in
.P
Proszę zauważyć, że w ten sposób uzyskuje się jedynie bezpośrednie
zależności pliku wykonywalnego, natomiast \fBldd\fP pokazuje jego całe drzewo
zależności.
.SH OPCJE
.TP 
\fB\-\-version\fP
Wypisuje numer wersji \fBldd\fP.
.TP 
\fB\-\-verbose\fP
.TQ
\fB\-v\fP
Wypisuje wszystkie informacje, włączając to na przykład informacje o
wersjach symboli.
.TP 
\fB\-\-unused\fP
.TQ
\fB\-u\fP
Wypisuje nieużywane bezpośrednie zależności (od glibc 2.3.4).
.TP 
\fB\-\-data\-relocs\fP
.TQ
\fB\-d\fP
Dokonuje relokacji i zgłasza wszelkie brakujące funkcje (tylko ELF).
.TP 
\fB\-\-function\-relocs\fP
.TQ
\fB\-r\fP
Dokonuje relokacji zarówno dla obiektów danych, jak i funkcji i zgłasza
listę nieobecnych obiektów lub funkcji (tylko ELF).
.TP 
\fB\-\-help\fP
.\" .SH NOTES
.\" The standard version of
.\" .B ldd
.\" comes with glibc2.
.\" Libc5 came with an older version, still present
.\" on some systems.
.\" The long options are not supported by the libc5 version.
.\" On the other hand, the glibc2 version does not support
.\" .B \-V
.\" and only has the equivalent
.\" .BR \-\-version .
.\" .P
.\" The libc5 version of this program will use the name of a library given
.\" on the command line as-is when it contains a \[aq]/\[aq]; otherwise it
.\" searches for the library in the standard locations.
.\" To run it
.\" on a shared library in the current directory, prefix the name with "./".
Informacje o użyciu programu.
.SH USTERKI
\fBldd\fP nie działa na bibliotekach współdzielonych a.out.
.P
.\" .SH AUTHOR
.\" David Engel.
.\" Roland McGrath and Ulrich Drepper.
\fBldd\fP nie zadziała z bardzo starymi programami a.out, które zostały
skonsolidowane zanim dodano do kompilatora obsługę \fBldd\fP. Jeśli użyje się
\fBldd\fP na jednym z tych programów, to program będzie uruchomiony z \fIargc\fP =
0, a wyniki tego będą nieprzewidywalne.
.SH "ZOBACZ TAKŻE"
\fBpldd\fP(1), \fBsprof\fP(1), \fBld.so\fP(8), \fBldconfig\fP(8)
.PP
.SH TŁUMACZENIE
Tłumaczenie niniejszej strony podręcznika:
Przemek Borys <pborys@dione.ids.pl>,
Robert Luberda <robert@debian.org>
i
Michał Kułach <michal.kulach@gmail.com>
.
.PP
Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach
licencji można uzyskać zapoznając się z
.UR https://www.gnu.org/licenses/gpl-3.0.html
GNU General Public License w wersji 3
.UE
lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.
.PP
Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy
dyskusyjnej
.MT manpages-pl-list@lists.sourceforge.net
.ME .
