Eu tenho um aplicativo de 32 bits (chamado uclsyn) que recebi de um professor de astronomia. Eu consegui executá-lo no CentOS há um ano, mas agora, quando estou configurando uma nova VM do CentOS, ela não funciona e não sei por quê. Ele continua voltando com "Killed".
Esta é a troca na linha de comando:
$ ./uclsyn_linux
Killed
$ ldd ./uclsyn_linux
not a dynamic executable
$ file ./uclsyn_linux
uclsyn_linux: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.9, not stripped
Na máquina que é executada, "ldd ./uclsyn_linux" retorna uma lista inteira de dependências. Encontrei os pacotes que fornecem essas bibliotecas compartilhadas e todas parecem estar instaladas.
Pacotes necessários
- libSM-1.1.0-7.1.el6.i686
- libX11-1.3-2.el6.i686
- libgcc-4.4.6-3.el6.i386
- glibc-2.12-1.47.el6_2.9.i686
- libuuid-2.17.2-12.4.el6.i686
- libXau-1.0.5-1.el6.i686
- Há também um monte de bibliotecas locais para o aplicativo que eu verifiquei e já estão instaladas.
Meu ambiente
CentOS em execução no VirtualBox
uname -a
: Linux localhost.localdomain 2.6.32-358.el6.i686 # 1 SMP qui Feb 21 12:50:49 UTC 2013 i686 i686 i386 GNU / Linux
strace ./uclsyn
? Isso pode nos dar uma dica sobre o que está faltando primeiro.
strace
um programa não vinculado corretamente.