¿Qué significa la siguiente salida de ldd?
Como sé, la salida de ldd normalmente se ve así: BIBLIOTECA_COMPARTIDA => ubicación
.
Pero liblz.so.1
y libzstd.so.1
a continuación no parecen ser así.
ldd librdkafka.so
linux-vdso.so.1 => (0x00007ffde7484000)
liblz4.so.1 (0x00007f97c8953000)<br>
libzstd.so.1 (0x00007f97c8420000)<br>
libsasl2.so.2 => /usr/lib64/libsasl2.so.2 (0x00007f97c8206000)
libssl.so.10 => /usr/lib64/libssl.so.10 (0x00007f97c7f99000)
libcrypto.so.10 => /usr/lib64/libcrypto.so.10 (0x00007f97c7bb4000)
libz.so.1 => /lib64/libz.so.1 (0x00007f97c799e000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f97c7799000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f97c757c000)
librt.so.1 => /lib64/librt.so.1 (0x00007f97c7374000)
libc.so.6 => /lib64/libc.so.6 (0x00007f97c6fdf000)
¿Cuál es el significado de este tipo de salida?
davy.ai
La salida mostrada por
ldd librdkafka.so
incluye información sobre las bibliotecas dinámicas a las que el archivo binariolibrdkafka.so
está vinculado. La primera línealinux-vdso.so.1 => (0x00007ffde7484000)
representa el objeto compartido virtual dinámico que es proporcionado por el kernel a los programas en el espacio de usuario para que puedan realizar llamadas al sistema.Las líneas siguientes enumeran las bibliotecas compartidas dinámicas que
librdkafka.so
requiere ser cargadas en tiempo de ejecución. Las bibliotecas se enumeran bajo sus sonames, es decir, los nombres que el enlazador utiliza para localizarlas. En el caso deliblz4.so.1
ylibzstd.so.1
, se han encontrado en la ruta de búsqueda predeterminada del enlazador y no se ha especificado su ruta completa.Sin embargo, la ubicación de las bibliotecas compartidas
libsasl2.so.2
,libssl.so.10
,libcrypto.so.10
,libz.so.1
,libdl.so.2
,libpthread.so.0
,librt.so.1
ylibc.so.6
se ha especificado explícitamente. Estas son dependencias delibrdkafka.so
que se han instalado en varios directorios del sistema (por ejemplo,/usr/lib64
,/lib64
), y serán cargadas dinámicamente por el enlazador cuando se ejecutelibrdkafka.so
.