ldd con binarios de 32 bits en un sistema de 64 bits: se ejecuta pero no informa

ldd con binarios de 32 bits en un sistema de 64 bits: se ejecuta pero no informa

Mis enlazadores están en

/lib{32,64}/ld-2.20.so, con enlaces simbólicos en

/lib32/ld-linux.so.2y

/lib64/ld-linux-x86-64.so.2(a los apropiados ld-2.20.so)

Cuando intento ejecutar un binario de 32 bits, todo está bien. Se compilan bien (estoy usando un specsarchivo gcc ligeramente modificado) y aparentemente se vinculan bien y funcionan bien.

Cuando lo intento ldd /path/to/example/32bit/binary, me dicen not a dynamic executable. Tengo entendido que esto se debe a que no puedo encontrar un vinculador para abrir el ejecutable.

readelf -l example_binary | grep interpreterda [Requesting program interpreter: /lib32/ld-linux.so.2], como se esperaba.

¿Alguna idea de por qué sucede esto o cómo puedo solucionarlo?

Ps: "Instalar bibliotecas de compatibilidad de 32 bits usando Sudo apt get ..." no es útil, ya que no tengo apt/pacman/etc. Si necesito reinstalar una biblioteca específica (32 bits), saberlo sería útil.

Pps: los archivos de script instalados por gccat agrupan los archivos /usr/lib{32,64}/libc.soapropiados (reales) , con el final para lib32libc.so.6libc_nonshared.aAS_NEEDED ( /lib32/ld-linux.so.2 ) )

Respuesta1

Resulta que esto es bastante fácil.

/usr/bin/lddes solo un archivo de script.

Al abrir el archivo de secuencia de comandos se muestra una línea cerca de la parte superior, que inicialmente dice (en mi sistema):

RTLDLIST="/lib/ld-linux.so.2 /lib64/ld-linux-x86-64.so.2 /libx32/ld-linux-x32.so.2".

Cambiar esta línea para RTLDLIST="/lib32/ld-linux.so.2 /lib64/..."solucionar el problema de inmediato.

Ps (agregando aquí en caso de que ayude a alguien más que tiene dificultades para instalar gobject-introspection) La solución también es útil si intenta instalar gobject-introspection, porque eso requiere lddresolver bibliotecas.

El mensaje de error que recibí fue:ERROR: can't resolve libraries to shared libraries: gobject-2.0, glib-2.0

información relacionada