Meus linkers estão em
/lib{32,64}/ld-2.20.so, com links simbólicos em
/lib32/ld-linux.so.2 e
/lib64/ld-linux-x86-64.so.2(para os devidos ld-2.20.sos)
Quando eu tento executar um binário de 32 bits, tudo está bem. Eles compilar bem (eu estou usando um specsarquivo gcc ligeiramente modificado ) e, aparentemente, link bem e correr bem.
Quando eu tento ldd /path/to/example/32bit/binary, me disseram not a dynamic executable. Meu entendimento é que isso é devido a ser incapaz de encontrar um vinculador para abrir o executável.
readelf -l example_binary | grep interpreterdá [Requesting program interpreter: /lib32/ld-linux.so.2], como esperado.
Alguma idéia de por que isso está acontecendo / como posso consertar isso?
Ps - "Instalar bibliotecas de compatibilidade de 32 bits usando sudo apt get ..." não é útil, pois não tem apt / pacman / etcetera. Se eu precisar reinstalar uma biblioteca específica (32 bits), saiba que seria útil!
PPS - Os arquivos de script instalados por gccpelo /usr/lib{32,64}/libc.sogrupo apropriado (real) libc.so.6e libc_nonshared.aarquivos, com a AS_NEEDED ( /lib32/ld-linux.so.2 ) )no final da cauda para lib32