공유 라이브러리를로드하는 중 오류가 발생했습니다


1

우분투 14.04 x64에서 오래된 32 비트 앱을 실행하려고합니다.sudo apt-get install libc6-i386을 통해 기본 32 비트 지원을 설치했지만 공유 라이브러리에 대한 혼란스러운 메시지가 나타납니다.x64이기 때문에 내 라이브러리를로드 할 수는 없지만 전체는 32 비트입니다.

[email protected]:~/Desktop/MyApp/bin$ ./MyApp
./MyApp: error while loading shared libraries: libMyApp.so.1: wrong ELF class: ELFCLASS64
[email protected]:~/Desktop/MyApp/bin$ file libMyApp.so.1
libMyApp.so.1: symbolic link to `libMyApp.so.1.0.0' 
[email protected]:~/Desktop/MyApp/bin$ file libMyApp.so.1.0.0
libMyApp.so.1.0.0: ELF 32-bit LSB  shared object, Intel 80386, version 1 (SYSV), dynamically linked, BuildID[sha1]=701d820fbe229a015ba4c56b61015c08bb2c4ac0, not stripped
[email protected]:~/Desktop/MyApp/bin$ file MyApp
MyApp: ELF 32-bit LSB  executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.4, BuildID[sha1]=1f736df460b9754633c7d67284674da395dc31c8, not stripped

libc 또는 libssl 또는 libwhatsit과 같은 하위 수준의 종속성에 실제로 질식하고 있다고 가정하지만 실제 범인이 어느 것이 어느 것인지 알아낼 수있는 방법이 있습니까?

0

I ended up starting over with a fresh CentOS i386 vm, and in the process of getting this running there found that the binary needs libstdc++5. Back on Ubuntu, installing that via sudo apt-get install libstdc++5:i386 seems to have done the trick.